问题表现
svn status
看不到 .a 文件svn add .
没有添加 .a 文件
原因
这是 *.a
文件被忽略所致。
在 ~/.subversion/config
里面有一个 global-ignores
配置,里面列出了模式 *.a
。所以默认的 svn add .
是会忽略 .a
文件的。svn status
遵循忽略模式,看不到未添加到版本中的 .a
文件。
解决办法
单个 .a
文件添加
svn add filename.a
批量添加 *.a
find . -name '*.a' | xargs svn add
注意,svn add .
会按忽略规则,把 *.a
忽略掉,无法批量添加。svn add --no-ignore .
可以把 *.a
都添加,但同时会添加其他忽略掉的文件,比如 .DS_Store
,*.pyc
, *.o
等等。所以还是推荐用 find 搜出文件再使用 add.
查看状态
svn status --no-ignore
–no-ignore 选项使得命令不读取忽略规则,于是可看到 *.a
。
另外成功添加 *.a
之后,svn status
则可以看到 .a
文件。
备注
以上解释和办法同样适用于 *.so
, *.pyc
, *.o
等各种被 svn 默认忽略的文件。