Git的。如何在高手中重新定位? (SVN更新模拟)

时间:2015-06-05 15:55:41

标签: git

我在Git中知道,我之前使用过SVN三年了。

我克隆了一个repo并在没有创建分支的情况下进行了本地提交。现在我想从master获取更改,将其与我的本地提交合并(如果存在冲突)并将结果推送到原点。

在SVN中它会更新 - >合并 - >承诺。对于我的情况,Git中的模拟是什么?

2 个答案:

答案 0 :(得分:2)

只需使用.mega-dropdown-menu { width: 100vw; } 即可。它将从远程下载最后的提交,并将您的工作与它合并。

git pull命令是2个不同命令的宏:

  1. git pull下载最新提交并将其添加到本地远程跟踪分支
  2. git fetch将您当前的工作(您的上次本地提交)与从远程下载的最新提交合并
  3. 我建议你花几分钟时间阅读Git的一些基本概念。 git book是一个非常全面而有趣的起点。

答案 1 :(得分:0)

Git到SVN工作流程的模拟是fetch + rebase(不是fetch + merge)!

此外,Git不能像SVN那样简单地将远程更改集成到您的工作树中。 Git merge / rebase只能在干净的工作树上运行!

相当于SVN update的整个Git将是:

  • stash本地更改以清理工作树;
  • fetch远程更改;
  • rebase;
  • stash pop将本地更改重新集成到工作树中;
  • 解决冲突;
  • (如果存在冲突)使用stash drop手动删除隐藏状态。