如何处理将忽略的文件添加到新分支并切换回旧分支

时间:2018-12-11 16:01:43

标签: git

我正在将“新目录”添加到新分支。它包含“ my-code”目录,其中包含我需要检入git的内容,以及“ generated-files”目录,其中包含许多我不想检入的生成文件。

因此,我要添加一个.gitignore文件,以确保将忽略“生成的文件”。

\new-directory
   .gitignore
   \my-code
   \generated-files

我在“我的代码”中添加了三个代码文件,启动了在“生成的文件”中生成1000个文件的程序。我查看一下自己的更改:完美的三个更改,我签入并切换到较旧的分支以修复错误。

在旧分支中,生成的1000个文件显示为新文件。

如何正确消除这些问题?

我现在的想法:

  1. 每当我切换到在“新目录”中不包含.gitignore的旧分支时,请删除新文件。
  2. 阶段希望对旧分支进行更改,而仅提交那些。
  3. 将\ new-directory \ .gitignore添加到旧分支。 (不利之处是,有两个不同的提交具有相同的更改。当(如果?)两个分支最终合并时,肯定会有合并冲突。而且,仅包含.gitignore文件的目录似乎有些奇怪)
  4. 将新分支签出到单独的存储库中。

但是这些都不是太好了。每个都有缺点。

有没有更好的方法来解决这个问题?

1 个答案:

答案 0 :(得分:1)

您可以添加一个检出后githook,当当前分支(您刚刚检出的)不是与生成的文件相关联的分支时,该钩子会删除有问题的文件夹