我有一个已编译的静态库(带有“a”扩展名)我想要包含在我的SVN存储库中但是添加它永远不会工作(添加其他类型的项目没有问题)。如果我更改了扩展名(例如“library.a” - >“library.b”),则添加有效。为什么“a”扩展失败了?有没有办法解决这个问题而不重命名文件?
答案 0 :(得分:54)
您是否检查了全局忽略设置。在linux上,它们存储在〜/ .subversion / config
中我的机器上的默认设置是:
global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo
所以它忽略* .a文件
更多信息here
您应该可以使用
添加文件svn add "file" --no-ignore
绕过任何忽略规则集。
如果命令:
svn status --no-ignore
返回我,你有一个本地忽略。运行:
svn propedit svn:ignore
答案 1 :(得分:4)
所以,我建议实际编辑〜/ .subversion / config文件以再次允许.a文件:
global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.pyc *.pyo
#global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo
因为我的项目中有很多.a文件。
答案 2 :(得分:3)
在Mac OSX(Lion)上,我正在使用SCPlugin(http://scplugin.tigris.org/)。
这会在其上添加一个带有SVN命令的漂亮finder弹出窗口,它允许我在svnx或xcode不允许时添加* .a文件。
我怀疑它实际上是一个错误,因为它显然忽略了正确的忽略设置(具有讽刺意味),但对于那些不想惹恼终端的人来说,它证明是方便的。
编辑:SmartSVN还允许您查看被忽略的文件,以便可以将它们添加为任何普通文件。只需查看视图菜单下的“忽略文件”选项即可。
答案 3 :(得分:1)
顺便说一句,如果你正在使用SVN导入(即不是工作副本),你可以用以下方式覆盖全局忽略:
--config-option=config:miscellany:global-ignores=[new ignores]
答案 4 :(得分:1)
我们可以在svn上添加库:
svn add library.a --no-ignore
添加svn后需要更新:
svn update
使用以下命令在svn上提交更改:
svn commit -m "library.a added on svn"
答案 5 :(得分:0)
我最近遇到了这个问题,这是我的方式:
svn import --no-ignore --force svn://destination