我想从github master full拉出来更新我当前的工作目录。我有一个名为form.html的文件,它存在于我的工作目录中,而且是github origin master分支上的旧版本。
git pull origin master
当从主人那里拉出来时,我要求解决冲突。我不想解决合并冲突,而是希望我的文件form.html从我的本地分支到完全替换origin master分支上的form.html(远程)
最好的方法是什么?感谢
答案 0 :(得分:6)
如果您尚未提交本地文件,则可以(遵循“git pull keeping local changes”的想法):
git stash
git pull
git stash pop
# if conflict on pop:
git checkout --theirs -- form.html
但是如果您的文件已提交,请参阅“Is it possible to exclude specific commits when doing a git merge?”,并使用.gitattributes声明正确的合并:
form.html merge=ours
答案 1 :(得分:1)
假设您已经提交了form.html文件......
执行'git pull origin master'并发生冲突后,您可以根据本地版本轻松解决冲突。拉动后执行以下操作:
git checkout --ours -- <files in conflict>
git add <files in conflict>
git commit -m 'resolved with --ours'
git push origin master