如何在Git中创建排除某些文件的版本

时间:2016-02-02 10:29:12

标签: git git-merge

在我的git项目中, dev 分支都在同一个提交中。它们包括我目前正在处理的许多翻译/布局文件,但尚未完成。我需要构建一个不包含这些文件的项目的新版本,但几乎肯定需要对其他文件进行一些额外的更改。

如果我创建了一个新分支 rel ,请从 rel 分支中删除相关文件,然后转向可发布的版本,然后合并更改的最佳方法是什么如果没有git从 dev 删除这些文件,则重新进入dev是否有更好的方法来实现同样的目标?

e.g。合并前

dev
  - code1
  - code2
  - trans1
  - trans2
  - layout1
  - layout2

rel
  - code1
  - code2 (modified)
  - trans1 (modified)
  - layout1 (modified)
合并后

dev
  - code1
  - code2 (modified)
  - trans1 (modified)
  - trans2
  - layout1 (modified)
  - layout2

2 个答案:

答案 0 :(得分:1)

您需要进行的更改是否与您要删除的文件的存在或缺少有关,以及它们何时可以在删除后使用已删除的文件,这一点并不十分清楚。这是您用来实现目标的方法。

创建两个分支,rel-modifiedrel-removed。做出改变并将其交给拳头。删除文件并将其提交到第二个。创建一个分支rel并将前两个合并到其中。您可以部署rel

然后仅将rel-modified合并回dev以反映更改并保留已删除的文件。

答案 1 :(得分:0)

我会习惯于在一次提交中保留修改,并在修改之外的单独提交中删除不应该是发布的任何文件。这是一个非问题,因为您只会合并修改。