【发布时间】:2011-11-01 03:28:52
【问题描述】:
经常在分支上工作时,我需要引入一些“临时”更改(例如额外的调试信息,或者让我更好地观察我正在实际工作的事情的更改)。
关于这些“临时”更改:
- 我希望它们在我的分支的工作副本中,因为它们可以帮助我进行实际的更改,
- 我不希望它们提交到分支,因为该分支将在一段时间内合并到 master 中,并且它们不是生产代码。
目前我只是将它们保持为非暂存状态,并在暂存每个提交时手动跳过它们。但是我不能继续使用这个解决方案,因为:
- 我必须始终记住需要跳过哪些文件,
- 有一天我会在一个文件中进行 2 处更改,一个是临时的,一个是要提交的,这真的很麻烦。
我应该如何处理?
gitignore 显然是不可能的,因为我不想忽略整个文件,而且我仍然对其他提交者的更改感兴趣(我需要不时将分支变基为 master)。
【问题讨论】:
-
尝试将忽略扩展到大块粒度似乎是一个有趣的想法。甚至可能值得尝试在 git 邮件列表上询问(您不必订阅帖子,因为它的数量相当大,您可能不想这样做)。
-
其实 gitignore 是没有问题的,因为如果文件是版本控制的,你会得到它的提交版本。只有添加会忽略它。但是,当您只想忽略对特定文件的某些更改并且迟早您确实想要忽略时,它不会处理这种情况。
-
我添加了自己的想法,对我来说看起来不错,但如果没有问题,如果有经验的人可以看看,我将不胜感激。
-
正要问同样的问题。 .hunkignore 会很酷。然而,rebase 解决方案似乎很有效。
标签: git branch git-branch