我有一堆文件,我从一个位置移动到另一个位置,并更改了其中的内容(90%以上的更改(。使用git mv
可以正确地移动文件,git也会将其检测为重命名。
我的问题是:是否可以只添加并提交移动,而不添加文件的内容更改?
我已经有了所有这些本地更改,不想重做所有内容。
谢谢。
如果您使用git mv
移动了一堆文件,然后在git add
中未运行的情况下修改了这些文件:
分阶段的更改是没有修改的重命名。
如果是这样的话:您可以直接运行git commit
。
如果git mv
很容易重新应用(例如:它只由git mv dir1 dir2
组成(,最短的方法是隐藏您的更改,运行相同的git mv
并提交,然后弹出您的更改
git stash
git mv [what needs to be renamed]
git commit
git stash pop
如果git mv
动作有点复杂,另一个选项是:
将
git status -s
的输出存储在一个临时文件中:git status -s > ../renaming.txt
运行
git stash
、重新应用临时文件中列出的重命名列表&提交,
运行
git stash pop