在ob中修改文件名就会让git中的文件历史断掉,
但用git修改文件名,OB中链接就会断掉
大佬们都是怎么解决这样的问题的呢
在ob中修改文件名就会让git中的文件历史断掉,
但用git修改文件名,OB中链接就会断掉
大佬们都是怎么解决这样的问题的呢
不用git,纯粹本地
git用来同步还是备份?同步的话可以尝试一下remotely save;备份可以用官方的核心插件文件恢复尝试代替
官方的核心插件文件恢复修改文件名之后,历史记录也会断掉的。
自己回复自己,深入学习了git后,发现这个不是问题,git可以自己判断哪些文件是重新命名过的
问题不大
git可以自己判断哪些文件是重新命名过的
是的, 我理解 git 实际没记录 “文件重命名动作”, 它只记录添加 / 删除,
但是 git 可以根据文件相似度, 自由解释 “什么时候该视作重命名”
举例:
# 仓库里首先只有一个 1.txt
git add 1.txt
git commit -m "add 1.txt"
# 然后将 1.txt 改为 2.txt 并变化其中一些行
# 检查状态
git add -A
git status
# 如果 "变化其中一些行" 比较少, git status 会检测到 rename 1.txt => 2.txt
# 如果 "变化其中一些行" 比较多, git status 会检测到 delete 1.txt 以及 add 2.txt
# 但其实这都是一回事, 可以调整参数, 让它自由显示成为 rename 或 "一增一删"
# 这个值默认 50% 越高越相似
git status -M5%
git status -M95%
已经成为历史 commit 的也是相同道理
git show -M5% <历史的commitid>
git show -M95% <历史的commitid>
# 对同一个历史 commit, 也能根据这参数, 自由解释到底是 重命名, 还是增删
如图其实这就是一个 commit, 但是左侧解释为 rename, 右侧解释为一增一删
程序大佬,我都是用Sourcetree…
羡慕