2017-08-01 48 views
3

我正在开发我的电脑上的分支。我做了很多我不想推的改变,但我想保留它们。 我所做的是更改我的项目上的翻译行为,并且在推送它并将其部署到生产之前,我想稍微测试一下。 但我想继续在开发或任何其他分支上工作,并能够应用这些更改。Git保持一些本地变化干净,但不要推它们

还有就是我想出了想法:

  1. 保留所有这些文件(不混帐添加的话),并承诺只将文件其实我是想承诺。但是这个解决方案让我的“git status”非常混乱(很多修改过的文件),我相信它会产生错误并导致提交错误的文件。

  2. Git存储保存“翻译”并将其应用于我想使用它时。但是我会遇到一个混乱的git状态,在那里我不得不选择我想提交的文件中的哪一个。

  3. 创建就可以了我的新特征的新的分支,但只要我将其合并到我的工作分支,我将提交合并为同一时间

你知道任何其他的工作流程保留许多文件的更改列表并应用/删除这些更改?

回答

0

类似git-flowgitlab-flow很适合。

从我读过的,我可以得出结论,你的项目包含2个模块,并且你修改它们两个。

一个模块是稳定的,但您仍然修改它,想要更彻底地测试您的修改,另一个模块是一个正在进行的工作。

我会使用你的第三个变体,但将你的工作分支合并到你的新功能分支。或者,如果您想将您的修改分离到“稳定”模块,则可以将它们保留在单独的分支中。

也就是说,你会得到3个分支:

  • 你对“不稳定”模块的工作,“稳定”模块没有你的最新 变化;
  • 您对“稳定”模块的修改;
  • 两个以上

分支在混帐合并既便宜又方便,你可以创建分支中的任意量。

0

你可以将你的主要本地分支重定位到一个中间分支,它是跟踪远处分支的分支。然后,您通过樱桃选择将您的提交从您的主要本地分支报告给跟踪分支,然后将您的主要本地分配到更新的跟踪分支。

0

将本地未完成的工作保留在单独的分支上并推送它。

  1. 它可以让你正确地制作提交,而不是在最后做一个巨大的怪物提交。
  2. 它将允许您在服务器上拥有代码副本,以便在发生磁盘崩溃或类似情况时不会丢失工作。
  3. 在部署到生产之前,它将允许其他人查看您的代码并对其进行检查。

部署通常会在单个分支上进行。只要您不将更改合并到该分支中(尽管您需要在您的位置进行验证),那么您就很安全。

0

在第三个选项,为您的功能创建一个新的分支。

您不必直到你准备把它合并到发展 - 合并发展功能相反,只要有你要测试的变化。

  • 工作清洁开发代码:检查开发。
  • 要处理新的译员代码:签出功能并合并来自开发的最新更改。
  • 当功能完成时:最后一次合并开发功能(如果它尚未更新),然后检查开发和合并功能。
相关问题