本文前言,因倡导开源精神,我也把代码传上了开源社区,可是,当初使用http://git.oschina.net 网站上传代码的时候不知道使用工具。我竟然一个文件一个文件复制粘贴,可费了我好大一个劲儿,那时在想,如果一但写的项目多,文件数量多的话,那不是要COPY死去?觉得这样完全不合理,就搜了一下“如何快速上传代码到开源社区”,哇!好LOW的关键词了,但还好用。果然让我搜到了,原来可以使用git工具来上传,这下可解放了我复制粘贴的动作了,越来越喜欢上用git了。
下面是我搜的比较好的一篇文章,照着来,准没错!有事儿您Q我。http://blog.csdn.net/g120406191/article/details/22525239
正文
已有http://git.oschina.net的帐号,别人将你加入到项目组中,并给你一个提交代码的地址:[email protected] ,如何提交代码??
1.首先看一下自己是否有公钥, 在 我的资料-->SSH公钥 查看,如果没有,添加自己的SSH 公钥:
SSH key 可以让你在你的电脑和 Git @ OSC 之间建立安全的加密连接。
你可以按如下命令来生成sshkey
ssh-keygen -t rsa -C "[email protected]" # Creates a new ssh key using the provided email # Generating public/private rsa key pair...
查看你的public key,并把他添加到 Git @ OSC http://git.oschina.net/keys
cat ~/.ssh/id_rsa.pub # ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
复制
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
添加到
公钥里面,保存。名称自己定。
添加后,在终端(Terminal)中输入
ssh -T [email protected]
若返回类似下面welcome..
Welcome to [email protected], yourname!
则证明添加成功。
2.打开Git Bash,将目录切换到你的项目所在的文件夹
例如你有一个项目Demo,你就切换到.../Demo目录下
3.运行命令 git init . 注意后面有一个点
4.运行命令 git pull [email protected]:xxxx/Demo.git
运行这一步的时候,可能会报一个下面的错,这是说需要创建你的名字,让github识别你
5.运行命令 git add -A . 注意后面有一个点
6.运行命令 git commit -am "对代码的有关说明"
7.运行命令 git push [email protected]:xxxxxxx/Demo.git master
最后出现进度,上传速度,done,证明上传成功。
现在可以进入http://git.oschina.net/查看到自己上传的代码了。
出现:
Git报错:Updates were rejected because the tip of your current branch is b
使用git的过程中有时候会出现无法push的问题,报错如下图:
这是由于远程repository和我本地的repository冲突造成,通常发生在多人协作的开发过程中
解决方法:
1.使用强制push的方法:
git push -u origin master -f
这样会使远程修改丢失,一般是不可取的
2.push前先将远程repository修改pull下来
git pull origin master
git push -u origin master
3.若不想merge远程和本地修改,可以先创建新的分支:
git branch [name]
git push -u origin [name]
多人协作的开发过程,一般推荐熟练使用分支功能来进行代码的托管,这样就会避免冲突的发生。