我想将一个外部目录添加到现有存储库.
外部目录:/ home/some /目录
工作目录:/htdocs/.git
如果我从/ htdocs目录尝试以下命令:
git add/home/some/directory
我收到一个错误:致命:'/ home/some/directory'在存储库外
cse*_*ton 52
如果我需要做类似的事情,我通常会将该外部文件或目录移动到我的git repo中,并将其原始位置符号链接到新的.
mv /home/some/directory /htdocs/directory
ln -s /htdocs/directory /home/some/
git add ./directory
Run Code Online (Sandbox Code Playgroud)
当我为一个应用程序开发插件时,我想使用这种技术,我希望将其保留在版本控制之下但必须存储在特定位置.
Mot*_*awg 15
我有同样的错误......用谷歌搜索死了......没多大出来.
克里斯蒂安的答案奏效:
git --work-tree=/ add /home/some/directory
Run Code Online (Sandbox Code Playgroud)
但后来"工作树"让我走了.我grep'd所有Git文档并提出了core.worktree.
我用了
git config --global core.worktree /
Run Code Online (Sandbox Code Playgroud)
瞧!我现在可以从系统中的任何目录添加.我不知道它是否会导致任何其他地方的问题,但我会尝试更新,因为我继续.
小智 13
git --work-tree=/ add /home/some/directory
Run Code Online (Sandbox Code Playgroud)
这有一个非常简单的解决方案.
假设您的Git-repo位于/ var/data/my-app中,并且您希望将/ var/data/public /添加到该repo中.你不能使用'add',因为Git不会在repo的根目录之外添加资源.所以..
解:
将/ var/data/public /目录移动到Git-repo根目录(/ var/data/my-app).
使用以下命令在/ var/data/my-app/public文件夹中创建/ var/data/public内的sym-link(符号链接): ln -s source_file_or_directory virtual_file_or_directory
然后,只需使用git add正常方式将移动的文件或目录添加到Git .您的Git源代码控制现在正在跟踪所需的文件/文件夹,外部目录中的sym-link确保文件/文件夹可以被其他任何内容访问!
Ala*_*avi -3
添加指向存储库中目录的符号链接。然后,添加相同的内容。
ln -s /home/some/directory/
git add directory
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
43022 次 |
| 最近记录: |