使用本地设置的Git:改变分支冲突

时间:2012-08-31 13:33:28

标签: c# visual-studio git

我正在使用Git Extensions作为git GUI。

在处理vs c#项目时,我需要保留许多设置文件。 我想创建一个本地分支来保留它们。

现在我的工作流程如下:

  1. 进行真正的更改
  2. 从本地设置分支机构结帐
  3. 提交,推送
  4. 结帐回本地设置分支
  5. Rebase local branch
  6. 除非我在本地设置提交中更改了文件,否则它工作正常。 如果我确实从本地分支机构结账,则该文件的冲突正在中止。

    我需要存储更改,结帐,应用存储,弹出存储。

    有更好的方法吗? 我只需要在少量文件中保留一些变化。

2 个答案:

答案 0 :(得分:1)

为什么用这种方式使用分支?分支旨在保持功能分离,直到它们准备好被拉回到单个“主”分支中。如果您的项目有一堆与项目相关的设置文件,那就没问题,您可以将它们保存在master中。如果您的设置是试验性的,那么您可以将它们复制到另一个分支,但整个项目也应该在该分支中。

您的工作流程应该类似。

  1. 做出真正的改变。
  2. 提交更改。
  3. 重复。
  4. 当您准备好从本地仓库发布更改时,您可以

    1. git pull
    2. 修复任何冲突(如果存在)。
    3. git push

    4. 编辑:也许另一个工作流程是在master上开发主项目,并在其他分支上进行各种设置更改,但在更改时定期拉入主数据库。

      1. git commit //在主人身上时。
      2. git checkout debug
      3. git merge master //将master拉入调试
      4. 测试更改并根据需要提交
      5. git checkout master
      6. 在这种情况下,master永远不会被更改,也不会受到其他分支更改的影响,但是各个分支可以通过master的更改保持最新。

答案 1 :(得分:0)

您可以决定仅通过git-cherry-pick合并特定提交。如果你总是为你的设置更改单独提交(意思是,提交只更改设置,没有别的),你可以使用cherry-pick来合并所有提交,除了那些改变设置的提交。