我们有一个共享目录(调用它/共享),我们通过我们的主git分支自动更新,只要有一个push to master就运行这些命令:
git reset --hard HEAD git clean -f -d git pull
这在很大程度上起作用.然而,即使在git中检查了"media"符号链接,我们也不希望触及目录/共享/媒体.
我已将"media"添加到.git/info/exclude中,但无论如何,"git reset --hard HEAD"会删除/ shared/media并将其替换为已签入的符号链接.
有没有办法让"git reset --hard HEAD"单独留下这个目录,除了事先将它移开并在之后恢复它?
git update-index --skip-worktree <file>应该做的伎俩(见类似的问题: git update-index --assume-unchanged和git reset)
您不能忽略 git 存储库中存储有实际内容的路径。Git 将尊重对跟踪树的更改。忽略仅影响开始跟踪新内容的尝试,需要add -f实际存储新内容。
.gitignore但是,如果您通过配置忽略带有、.git/info/exclude或 的路径,则这仍然成立core.excludesfile。
如果您不希望通过硬重置删除媒体目录,则需要从存储库中删除冲突的路径。除了显式重置其他路径之外,没有其他解决方法。
| 归档时间: |
|
| 查看次数: |
1827 次 |
| 最近记录: |