Mac*_*cha 27 symbolic-link git
我有两个文件夹:
/home/me/code/project//srv/www/projectfiles/在/home/me/code/project文件夹中,我已符号链接static到/srv/www/projectfiles/
即/home/me/code/project/static/->/srv/www/projectfiles/
当我现在尝试提交时,它看不到符号链接后面的任何文件,而是尝试将符号链接本身作为文件提交。
如何提交/srv/www/projectfiles/style.css位于符号链接后面的文件(例如)?
mmm*_*mmm 14
一种解决方法是让 /srv/www/projectfiles 成为 /home/me/code/project/static 的符号链接,因此 git 看不到符号链接
Mar*_*ark 10
如果你使用的是 linux,我特别喜欢GitBLSR提供的解决方案。它是一个通过 LD_PRELOAD 加载的库,它透明地将符号链接解引用到存储库外的文件和文件夹。
为本地用户帐户安装它很简单:
git clone https://github.com/Alcaro/GitBSLR.git
cd GitBSLR
./install.sh
Run Code Online (Sandbox Code Playgroud)
这将编译库并创建一个如下所示的别名~/.bashrc:
alias git="LD_PRELOAD=/path/to/gitbslr.so git"
Run Code Online (Sandbox Code Playgroud)
使用此别名可启用透明链接解除引用。
小智 6
考虑使用挂载点来挂载目标文件夹(您当前符号链接到的文件夹)以显示在 git 项目下您想要的位置。我已经成功地使用了这种方法。
例子:
#!/bin/sh
sudo mount --bind ./src_folder ./dst_folder
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33697 次 |
| 最近记录: |