您的位置:首页 > 其它

git pull命令将git服务器的文件更新到本地

2016-01-27 23:03 543 查看
(下面的解释都假设分支为origin/master)

git pull介绍:

该命令会把服务器上新增的文件、更新的文件同步到本地,

使用该命令可能会出现以下结果:

①如果服务器只是新增了几个文件,但是其他文件一点没变,则git pull顺利执行,本地也新增了这几个文件

②服务器上的文件a修改了,但是本地没有修改文件a(两人没有同时操作同一行代码),

此时顺利将本地的文件a更新为服务器上的文件a

③如果服务器上的文件a有改动(假设同事提交),而你本地也对文件a做了修改:

如果你们的代码有重叠(即修改了同一行),

则会报错:Please, commit your changes or stash them before you can merge.

这时,你需要把冲突的文件commit(并不操作服务器的文件a):

git add 文件a

git commit -m '提交信息注释')

然后,再使用

git pull origin master

这时,会报错:Automatic merge failed; fix conflicts and then commit the result.

意思是文件a自动合并到本地时,发生冲突(此时文件a已被更新),你需要修改被更新的文件a。

打开本地文件a,可以看到文件a已经被更新(保留了服务器文件a的改动,同时也保存了本地的文件a的修
改),此时,你需要修改文件a。

然后

git add 文件a,

git commmit -m '提交注释信息'

git push origin master

这时,服务器上的文件a,已经被替换成你push的文件a了。

补充:

如何在 git pull之前查看服务器上有什么文件会被更新(合并)?

git fetch origin/master //当前是origin/master分支时,直接git fetch命令也行

git diff -w origin/master //查看有什么文件的什么位置会被更新
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: