fast forward 讲解:利用gitub进行托管 之 git push错误 fail to push some refs——no fast forward
2013-06-06 03:16
417 查看
概述:为了在不同地方,不同人员之间进行协同编辑,同时能够进行统一管理,我们可以把代码托管到github的服务器上。
1.第一步:新建一个github账户
2.第二步:在账户中新建一个仓库
3.第三步:在本地新建一个仓库
git init
git add .
git commit -m
4.第四步:在本地新建远程仓库与分支
git remote add origin git@github.com:testthinguser/iphone_project.git
vim .git/config
注意,remote "origin"表示远程分支的信息,branch master 表示本地分支的信息,其中remote参数表示要提交到的远程分支,merge 是默认的merge对象
5.第五步:利用git进行推送
git push origin master
此时,容易出现以下no fast forward错误:
![](http://img.blog.csdn.net/20130625105146765?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdHJvY2hpbHVzZXM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
出错原因:
多人协同开发,使用Git经常会看到警告信息包含术语:fast forward, 这是何义?
简单来说就是提交到远程中心仓库的代码必须是按照时间顺序的。
比如A从中心仓库拿到代码后,对文件f进行了修改。然后push到中心仓库。
B在A之前就拿到了中心仓库的代码,在A push成功之后也对f文件进行了修改。这个时候B也运行push命令推送代码。
会收到一个类似上面的信息:
提醒你非快进方式的更新被拒绝了,需要先从中心仓库pull到最新版本,merge后再push.
特别注意:
1)fast forward能够保证不会强制覆盖别人的代码,确保了多人协同开发。简而言之,fast forward提交就是说,后提交点B是前面最新提交点的直接后代。这样,直接将HEAD指针往下游移动即可。
2)尽量不要使用non fast forward方法提交代码。no fastforward状态如下图所示:
-------1.1-------1.2-------1.3
|
1.4-------1.5
上图产生的过程:从图中,我么可以看出:最开始我们从服务器上pull下来1.1版本,后来别人向服务器上提交了1.2和1.3版本,然后我们在本地分支开发了1.4与1.5版本。此时,如果我们再进行提交,那么1.2和1.3的版本历史将被覆盖。
解决方法:
先执行git pull
然后执行 git add .
然后git commit
最后git push origin master
1.第一步:新建一个github账户
2.第二步:在账户中新建一个仓库
3.第三步:在本地新建一个仓库
git init
git add .
git commit -m
4.第四步:在本地新建远程仓库与分支
git remote add origin git@github.com:testthinguser/iphone_project.git
vim .git/config
1 [core] 2 repositoryformatversion = 0 3 filemode = true 4 bare = false 5 logallrefupdates = true 6 [remote "origin"] 7 url = https://github.com/huangyukun2012/linux-2.4.21.git 8 fetch = +refs/heads/*:refs/remotes/origin/* 9 [branch "master"] 10 remote=origin 11 merge = refs/heads/master
注意,remote "origin"表示远程分支的信息,branch master 表示本地分支的信息,其中remote参数表示要提交到的远程分支,merge 是默认的merge对象
5.第五步:利用git进行推送
git push origin master
此时,容易出现以下no fast forward错误:
出错原因:
多人协同开发,使用Git经常会看到警告信息包含术语:fast forward, 这是何义?
简单来说就是提交到远程中心仓库的代码必须是按照时间顺序的。
比如A从中心仓库拿到代码后,对文件f进行了修改。然后push到中心仓库。
B在A之前就拿到了中心仓库的代码,在A push成功之后也对f文件进行了修改。这个时候B也运行push命令推送代码。
会收到一个类似上面的信息:
提醒你非快进方式的更新被拒绝了,需要先从中心仓库pull到最新版本,merge后再push.
特别注意:
1)fast forward能够保证不会强制覆盖别人的代码,确保了多人协同开发。简而言之,fast forward提交就是说,后提交点B是前面最新提交点的直接后代。这样,直接将HEAD指针往下游移动即可。
2)尽量不要使用non fast forward方法提交代码。no fastforward状态如下图所示:
-------1.1-------1.2-------1.3
|
1.4-------1.5
上图产生的过程:从图中,我么可以看出:最开始我们从服务器上pull下来1.1版本,后来别人向服务器上提交了1.2和1.3版本,然后我们在本地分支开发了1.4与1.5版本。此时,如果我们再进行提交,那么1.2和1.3的版本历史将被覆盖。
解决方法:
先执行git pull
然后执行 git add .
然后git commit
最后git push origin master
相关文章推荐
- git push错误 fail to push some refs——no fast forward
- git错误failed to push some refs to git
- git常见错误failed to push some refs to
- git错误:error: failed to push some refs to
- 解决git push错误:failed to push some refs to git
- Git本地分支版本号过低导致的push错误 error: failed to push some refs to ... 及兴许amend
- Git本地分支版本过低导致的push错误 error: failed to push some refs to ... 及后续amend
- git 错误error: failed to push some refs to
- failed to push some refs to 'git@github.com:' gitHub push错误的解决办法
- 解决本地项目上传到github时$git push -u origin master error failed to push some refs...等错误
- rake deploy ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to解决方法
- 解决git push错误:failed to push some refs to git
- git 错误 使用rror: failed to push some refs
- failed to push some refs to git
- git - error: failed to push some refs to 'https://github.com/.......git'' 解决办法
- git - error: failed to push some refs to 'https://github.com/xuzhezhaozhao/Practice.git' 解决办法
- Eclipse使用git的Push出现rejected - non-fast-forward错误
- git push错误 remote: error: refusing to update checked out branch: refs/heads/master 解决方式
- Git 应用问题(一) —— failed to push some refs to git
- git如何解决failed to push some refs to git