我目前正在尝试在 git 上设置 Xilinx Vivado 项目。问题是 Vivado 使用的大量烦人文件,我不想在文件 dif 中看到这些文件。我希望能够在其他地方克隆项目并使其正常工作。所以我不仅想跟踪源文件,而且只想在文件差异中查看源文件。如何做到这一点?
将一个名为 .gitignore
的文件添加到项目中。此文件包含要忽略的文件和目录列表。例如,要忽略代码中 path/to/images 目录中的所有文件,请添加以下行
/path/to/images
到.gitignore
文件。要忽略文件图像/awesome_photo1.jpg只需添加该行
/images/awesome_photo1.jpg
如果您已将这些文件添加到存储库,则可以删除它们而不使用以下命令删除它们
git rm --cached file_to_ignore
所以我不仅想跟踪源文件,而且只想在文件差异中查看源文件。
我知道您仍然希望跟踪这些 Vivado 文件,因此它们仍会添加到存储库中并保留其中的更改等,但不希望在查看差异时看到这些文件中的更改。
一般来说,这是不可能的,因为 Git 不知道某个文件是什么类型,是否与你相关。Git 对每个文件的处理方式相同,因此您将看到所有文件类型的更改。此外,通常,即使它不是源文件,即使该文件不是真正的源文件,系统也可能需要其他文件才能正常运行。在这种情况下,您希望确保其中的更改也不会中断,因此您最终也希望查看这些差异。
你不能限制 Git 在差异中向你显示的文件类型,但你可以告诉 Git 只向你显示某个文件路径的差异。例如,如果您的所有源文件都位于目录 src
中,那么您可以告诉 Git 仅显示该文件夹中文件的差异:
git diff -- src/
除此之外,在向 Git 询问差异时,无法关闭某些文件的 diffs。如果您仍然想跟踪这些文件并且将它们添加到您的.gitignore
不是一种选择,至少不会。
既然你
您应该从源文件(*.vhd?,*.v,*.sdc(和vivado项目文件开始。
Git 能够忽略 comlete 子文件夹,例如临时文件夹或生成的 IP 核文件夹。
- 将所有源文件和项目文件添加到本地 git 存储库,然后
- 提交它们。
- 将其克隆到第二个临时文件夹中,然后
- 打开 Vivado 项目。
如果它打开并且所有文件都在那里,那就没问题了。否则:
- 添加缺少的文件。
- 提交它并
- 将其拉入临时 git。
- 如果缺少更多文件,请再做一次=>转到5。