![]() |
1
2
git提交是整个项目版本的不可变快照。对于保存提交的每个repo,该快照中每个文件的路径都是相同的。你可以尝试使用一些疯狂的方案来解决这个问题,该方案在推送完成时重写历史记录,但如果你能让它正常工作,结果仍然会是一个不断与本地不同步的远程(即,你将无法干净地推送或拉送)。 有两种选择,这取决于你想完成什么。 如果远程包含多个要共享在一起的项目,但要单独修改每个项目,则可能最接近的做法是创建一个与本地类似的单独远程,然后将其推送到该远程,并将其设置为“更广泛”存储库的子模块或子树。 如果您试图将git用作部署工具,而这些文件并没有出现在正确的工作路径中,那么您应该
(a)将遥控器切换为裸机回购,并使用挂钩执行
(b)移动回购工作树的根,使其位于您希望它位于服务器上的位置,或 (c)[我的建议]使用一个适当的部署工具,而不是让push做一些不是真正为之设计的事情 |
![]() |
2
1
如果希望文件位于子目录中,则需要在本地创建一个提交,将文件移动到相应的子目录中,然后将这些更改推送到远程存储库。
|
![]() |
Harry · 如何在编译时获取克隆的git仓库的标签 5 月前 |
![]() |
Ooker · 如何从blob中删除秘密? 5 月前 |
![]() |
hasdrubal · git日志图智能分支过滤器 5 月前 |
![]() |
J. Doe · 为什么git中没有跟踪git文件? 6 月前 |