将符号链接推送到Git是一种不好的做法吗?
将符号链接推送到git是否是一种不好的实践?
在github存储库中,我们与符号链接有安排,从我的角度来看,这是一种不好的实践:
代码组织不好。您将看到两个或更多个相同文件的实例,并且每次都需要调查它是符号链接还是常规文件。
IDE与重复文件的处理效果不好。
您可以扫描单个文件夹中的更改,如果没有进行更改,则可以跳过连续集成中的某些步骤。使用符号链接,这更加困难。
我猜还有其他因素,但这就是我遇到的。
我不明白您所说的“两个或更多个相同文件的实例”是什么意思。您正在创建指向何处的符号链接?存储库中的其他文件吗?我觉得这里对代码组织做了很多(相对狭义的)假设,这些假设与提出的非常(广义的)问题并不相关。
当您删除或移动它们引用的文件时,符号链接文件会发生什么情况?如何使用新路径更新它们?与使用特定于语言的引用(如import/include)相比,隐式引用似乎是一个不好的主意。
推送符号链接到git的问题是否是一种不好的做法?
这个问题的出现的原因是:
- 当符号链接引用一个相对路径并且在同一个存储库中的资源时,这是可以的。
- 但如果符号链接引用一个绝对路径,或者引用一个相对或绝对路径的存储库之外的资源,那么就是不好的做法。
原因是:任何在不同机器/平台/操作系统上克隆的存储库将无法访问/使用这些路径。
解决方法是:
- 如果符号链接是相对路径且在同一个存储库内的资源,那么可以继续使用。
- 如果符号链接是绝对路径或引用存储库之外的资源,那么应该避免使用。
推送符号链接到git是一种不好的做法,因为它会导致在不同机器/平台/操作系统上克隆的存储库无法访问/使用这些路径。应该避免使用绝对路径或引用存储库之外的资源的符号链接。