我是Git的新手并试图解决这个问题。
我克隆了一个远程存储库,比如ssh:// repo到我的本地机器。克隆后,我编辑了一些文件,在此期间远程存储库也被更改了。
如何在保留两组更改的同时使用远程存储库更新本地存储库?
答案 0 :(得分:4)
只需使用
将更改提交到本地存储库git commit
命令。现在你永远不会失去你的变化!然后使用
从远程存储库中提取新的更改git pull
命令。此命令将获取新更改并将其与更改合并。通常没有冲突。在这种情况下,您可以自由地将更改推送到远程存储库。否则,您需要解决所有冲突,使用
标记它们已解决git add
命令(只使用来自git status输出的提示)并使用
提交此合并git commit
命令。
答案 1 :(得分:2)
“git pull”会将远程更改远程合并到您的本地副本中。如果要独立维护更改,可以在拉动之前将更改移动到新分支。因此,如果您尚未提交更改,则可以执行以下操作:
> git stash #stash the changes
> git branch dev_branch #create a new branch
> git checkout dev_branch #move to the new branch
> git stash apply #paste the changes into the new branch
> git checkout master #switch back to the master branch
> git pull #update the master branch
最后,您有一个版本的代码包含您的更改(dev_branch)和一个与远程代码(master)匹配的版本。您现在可以独立于远程代码发生的任何事情来处理dev_branch。 (当你了解git you;我发现这是一种更“git”的工作方式 - 只是在你的主分支中工作并做“git pull”来合并远程变更是一种更“颠覆”的工作方式)。
答案 2 :(得分:0)
你可以使用命令'git pull',如果有的话,这个标志合并冲突。 如果存在冲突,请解决它并应该执行git commit