Git:将远程文件与本地文件合并?

时间:2012-01-12 16:51:31

标签: git

我是Git的新手并试图解决这个问题。

我克隆了一个远程存储库,比如ssh:// repo到我的本地机器。克隆后,我编辑了一些文件,在此期间远程存储库也被更改了。

如何在保留两组更改的同时使用远程存储库更新本地存储库?

3 个答案:

答案 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

相关问题