假设我在 SVN 管理路径中创建了一个符号链接文件,将路径提交到 SVN,然后检出该路径。
符号链接文件会存在吗?
如果符号链接文件由相对路径组成,它会在“任何地方”完成结帐吗?
有陷阱吗?
Joh*_*n T 23
符号链接可以进行版本控制。
Unix 用户可以将符号链接置于版本控制之下。链接在 Unix 工作副本中重新创建,但不在 win32 工作副本中。
是的
只要权限未更改,就应该更改。
不适用于 Windows 结帐。
dav*_*gr8 16
一般来说,是的。
但是,某些客户端不能正确使用符号链接。对于 Eclipse IDE,Subclipse 创建目录而不是符号链接。
因此,最好在开始开发之前确保您的客户做得对。
小智 8
符号链接在 Windows 机器上无法生存,这可能是一个问题。
在 Windows 机器上,符号链接采用占位符文件*)的形式,例如:
style.css:
链接../www_public/styles.css
*):这些文件具有“ svn:special”属性,值为“ *”。
在将项目移动/上传到目标服务器之前,我有时必须将内容导出到 Windows 机器。
我使用一个小的 shell 脚本,它在从占位符文件中重新创建实际的符号链接方面做得很好:
#!/bin/sh
grep -lr '^link ' . | while read placeholderfile
do
linecount=`wc -l $placeholderfile | cut -c1`
if [ $linecount -eq 0 ] ; then
linkfile=`cut -c6- "$placeholderfile"`
ln -sf "$linkfile" "$placeholderfile"
echo -e "[\E[32;40mOK\E[37;40m] Replaced $placeholderfile with symlink"
else
echo -e "[\E[31;40mWARNING\E[37;40m] $placeholderfile contains newline(s)"
fi
tput sgr0
done
Run Code Online (Sandbox Code Playgroud)
该脚本假设所有以字符串“ link”开头且不包含换行符的文件都是符号链接。