Py学习  »  Git

在git中复制和编辑文件会将整个文件显示为新的更改

Kevin • 6 年前 • 2083 次点击  

我刚刚为我的同事提交了一份公关报告,并提出了一个(显而易见的)“问题”。

基本上,我已经复制了50多个文件,并对某些行进行了更改。在我们的系统中,我们在文件中附加2或3来表示版本号。

在pull请求中,它将这50个文件中的每一行显示为新行,因此查看这些文件将非常困难。

我的问题是,git有没有办法让我基本上说“不要认为这个文件是新的,应该认为它是x的复制品,需要修改。”

我知道我的同事可以手动区分这两个文件,但我想它也显示在公关。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46240
文章 [ 2 ]  |  最新文章 6 年前
Venkataraman R
Reply   •   1 楼
Venkataraman R    6 年前

您可以按照以下步骤操作。我只是给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

LeGEC
Reply   •   2 楼
LeGEC    6 年前
  1. git 只保留操作的结果内容,
  2. 它不保存有关您如何到达此状态的信息。

即:

  1. 它存储一个包含两个文件的提交 file file_2 内容非常相似,
  2. 这并没有区别” 文件2 最初是从 文件 “VS” 文件2 开始是空的,我把 文件 进入它

有一些选择要问 git diff 检测重命名和副本(请参见“ Record file copy operation with Git “我建议作为一个副本,我不认为GITHUB的GUI有一个方法来激活这些选项时,显示一个PRO的差异。