例如,Id喜欢修改登录页面,因此它会自动记录我.
我希望这些更改仅适用于我的开发工作站,并且在推送时不可见.如果我在一个分支上创建它,那么我必须在每次推送之前以某种方式取消合并该更改.
git是否支持?
如果你有至少Git 1.7.0,你可能会喜欢这个'管道':
git update-index --skip-worktree -- path
Run Code Online (Sandbox Code Playgroud)
从git update-index"Skip-worktree bit"下的联机帮助页:
Skip-worktree位可以在一个(长)句子中定义:当读取条目时,如果它被标记为skip-worktree,那么Git假装其工作目录版本是最新的并且改为读取索引版本.
详细说明,"阅读"意味着检查文件是否存在,读取文件属性或文件内容.工作目录版本可能存在或不存在.
"skip-worktree bit"是联机帮助页中记录的稀疏结账机制的git read-tree基础.
旧版本的Git(git update-index --assume-unchanged)中有一个相关的"位" ,但它不应该用于OP的目的.看起来它可能对OP的情况有用,但Git的维护者已经说过它的合同("承诺")使它不适合这样的目的.
为什么不使用设置gitattributes 过滤器驱动程序?

每次签出您的目录时,smudge如果满足某些条件(例如“这是或不是您的开发站”),它将通过步骤中的脚本检查该文件(并且仅该文件),并将修改内容因此。
该clean步骤将恢复其内容或至少忽略该特定修改。