在GIT下提交文件时,如何控制重命名阈值? [英] How can I control the rename threshold when committing files under git?

查看:21
本文介绍了在GIT下提交文件时,如何控制重命名阈值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将特定项目的连续快照放入Git的历史中。为此,我使用每个快照的内容填充存储库目录,然后运行

git add -A .
git commit -m 'Version X'

这是this answer中推荐的方法。但是,我发现只有当100%的文件内容保持不变时,提交才能识别文件重命名。有没有办法影响git commit的重命名检测,使其找到文件内容稍有更改的重命名?我看到git mergegit diff具有用于控制重命名阈值的各种选项,但git commit不存在这些选项。

我尝试过的内容:

  • 使用Home-BREW脚本查找重命名的文件,并在提交新文件内容之前使用重命名到新位置的原始文件执行提交。然而,这引入了一个人工提交,而且看起来不太优雅,因为它没有使用Git的重命名检测功能。
  • 为每个快照创建单独的分支,然后使用

    将连续的分支合并到master

    git merge -s recursive -Xtheirs -Xpatience -Xrename-threshold=20

    但是,这使我保留了旧版本的重命名文件,同时也检测不到重命名。

推荐答案

git commit从不检测重命名。它只是将内容写入存储库。只有在事后才能检测到重命名(以及副本),即运行git diffgit merge和朋友时。这是因为git不存储任何重命名/复制信息。

这篇关于在GIT下提交文件时,如何控制重命名阈值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆