【问题标题】:What does git sync do in VSCodegit sync 在 VSCode 中做了什么
【发布时间】:2016-08-21 01:46:02
【问题描述】:

在 Visual Studio Code 中同步更改时实际运行了哪些命令?

【问题讨论】:

    标签: git visual-studio-code


    【解决方案1】:

    来自VSCode online help:

    鉴于您的存储库已连接到某个远程,并且您签出的分支具有指向该远程分支的上游链接,VS Code 为您提供了有用的操作来推送、拉取和同步该分支(后者将运行拉命令,然后运行推送命令)。

    看来,如果您在给定分支上运行同步更改,它将执行以下操作:

    git pull origin someBranch
    git push origin someBranch
    

    根据@FelikZ 的评论,使pull --rebase 成为git pull 的默认行为的一种方法是通过添加以下内容来配置您的.gitconfig 文件:

    [pull]
        rebase = true
    

    那么,当 VSCode 插件发出 git pull 时,它应该默认使用 rebase 策略。如果你点击上面的链接并滚动到“Git patch/diff mode”部分,你会看到一个屏幕截图,它实际上显示了配置 Git 以通过 rebase 拉取。

    更新:从 v1.28 开始,现在有一个 git.rebaseWhenSync 设置。来自release notes:

    git.rebaseWhenSync 设置可让您配置 Sync 命令以在运行时始终使用 rebase 而不是合并。

    【讨论】:

    • 我可以发誓还有更多内容,例如在推送之前存储待处理的更改 :)
    • 有没有办法改变它的行为,所以它会pull --rebase 而不是只是拉?
    • @FelikZ 我更新了我的答案。我认为您可以更新您的.gitconfig 文件以在拉取时默认使用rebase。
    • @TimBiegeleisen 感谢您的回复。我做了一些搜索,发现它实际上很快就会在 VSCode 中发布(2017 年 11 月),see this!
    • 更新答案以包含新的git.rebaseWhenSync 设置!
    【解决方案2】:

    Visual Studio 代码同步顺序:PUSH + PULL screen shot from VS Code

    Visual Studio 2019 同步序列:PULL + PUSH screen shoot from Visual Studio 2019 documentation

    【讨论】:

      猜你喜欢
      • 2011-11-06
      • 2020-12-06
      • 1970-01-01
      • 1970-01-01
      • 2014-08-03
      • 2012-02-12
      • 2010-10-26
      • 2019-07-12
      • 2010-11-20
      相关资源
      最近更新 更多