git 从远程拉取代码、推代码的步骤
(注:如果是几个人共同管理项目,并且你的队友在你之前推过代码,那你就需要 git pull 一下,把代码拉到本地,解决一下冲突,再执行以下步骤,将本地代码推到远程仓库。)
第一步:查看当前的git仓库状态,可以使用git status。红色代表修改的文件
第二步:把更新的代码添加到暂存区。git add *
第三步:将暂存区的更新提交到仓库区。
git commit -m "更新说明" (更新说明,是本次推送代码的标识,写什么都可以,只要自己看得懂)
第四步:先git pull,拉取远程仓库所有分支更新并合并到本地。
git pull
第五步:将本地分支的更新全部推送到远程仓库。
git push origin master
第六步.再次使用git status查看当前的git仓库状态,已经没有改动,证明更新成功
二、报错信息
1.git push origin master报错
error: failed to push some refs to 'git@github.com:******/Demo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
网上搜索了下,是因为远程repository和我本地的repository冲突导致的,而我在创建版本库后,在github的版本库页面点击了创建README.md文件的按钮创建了说明文档,但是却没有pull到本地。这样就产生了版本冲突的问题。
有如下几种解决方法:
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]
然后push
$ git push -u origin [name]
2.git pull报错fatal: refusing to merge unrelated histories
假如我们的源是origin,分支是master,那么我们需要这样写
git pull origin master --allow-unrelated-histories
如果有设置了默认上传分支就可以用下面代码
git pull --allow-unrelated-histories
3.git pull 时提示 Please enter a commit message to explain why this merge is necessary.如何退出
Please enter a commit message to explain why this merge is necessary.
提示输入为何需要merge操作
如下
需要输入或者跳过这一步
- 按i键,进入插入(insert)描述操作,可以选择不输入
- 按Esc键,结束插入描述操作
- 按:wq,表示保存并结束本次操作
- enter键即可结束本次错误信息