我刚刚为我的同事提交了一份PR,然后提出了(明显的)“问题”。
基本上,我已经复制了50多个文件,并对某些行进行了更改。在我们的系统中,我们将_2或_3附加到文件中以表示版本号。
在拉取请求中,它将这50个文件中的每一行显示为新行,因此很难查看这些文件。
我的问题是,git是否有办法让我基本上说“不要将此文件视为新文件,而应将其视为X的副本并进行更改。”
我知道我的同事可以手动比较两个文件,但是我也希望它也可以显示在PR中。
答案 0 :(得分:1)
git
仅保留您操作的结果内容,即:
file
和file_2
的提交,内容非常相似,file_2
是最初从file
复制而来的,而“ file_2
开始是空的,我把file
的全部内容都打了回去,这没什么区别” 有一些选项要求git diff
检测到重命名和副本(请参阅“ Record file copy operation with Git”,我建议将其作为副本),我认为github的GUI无法激活这些选项显示PR的差异时。
答案 1 :(得分:-1)
您可以按照以下步骤操作。我只是举file1的例子。您需要对其他文件执行相同的操作。
mv file1 file1_version
git rm file1 #remove file1 from git tracking
vi file1_version #make file version changes, assuming you use vi editor
git add file1_version #add file1_version for tracking
git commit -m"rename and adding file"
现在,git将能够根据内容确定文件是否已更改。
有关更多信息,请read this stack overflow answer