我想要做的已经说明了这个问题 。 但我想解决一个实际和更通用的方式问题。 所以使用情况如下:
- 我有几个文件的几个局部变化
web.config
,createDb.sql
或以任何其它 - 我不希望提交这些文件,因为更改是针对我的本地机器只
- 这些文件必须是版本控制的,而且变化是由相当往往对其中一些(特别是SQL脚本),所以我想接收这些文件的更新
- 我不希望提交所有其他文件
- 我希望能够做到这一点没有摩擦,在一个命令(使用豪华-git的,所以PowerShell是欢迎)
链接到的解决方案据说用git add -p
,这是不实际的 ,是令人厌烦的手工挑块所有的时间或可能有这样做的更方便的方法?
例如,下面的一个可以工作:
- 如果将它们添加到索引,像之前过滤是在我的工作拷贝文件的能力
git -add -A -EXCEPT web.config crateDb.sql
。 然后,我可以映射一个git别名这一点,仅此而已。 - 如果有能力去申请藏匿。 我的意思是,除去包含在一个特定的藏匿从工作副本的修改。 因此,我将不得不这样做
git stash -deapply
每个之前提交,这也是好的。
这个问题是很常见的,这是奇怪的是,目前无解。 例如TortoiseSVN也有“忽略上提交”功能,Perforce公司允许这种类型的局部变化存储在一个单独的变更表,从不提交。