设置SVN,Git忽略MAC的.DS_Store文件的方法
2011-12-02 17:20
633 查看
I. 显示Mac隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles -bool true
隐藏显示Mac隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles -bool false
II. 删除目录下的.DS_Store:
Find /path/to/files –type f –name “.DS_Store” -print –delete
或者:
Find /path/to/files –type f –name “.DS_Store” -print0 | xargs –0 rm -rdf
III. 配置SVN忽略.DS_Store文件:
svn propset svn:ignore “.DS_Store” /path/to/files
[文档 http://svnbook.red-bean.com/en/1.5/svn.ref.svn.c.propset.html]
或者配置全局配置文件:
编辑 ~/.subversion/config文件 搜索 global-ignores 然后添加 .DS_Store
(配置SVN仓库忽略.DS_Store文件:
svn propset –revprop -r HEAD svn:ignore “.DS_Store” http://svn.site.com/path/to/repository/project
但SVN仓库默认不允许队revision property做修改,所以,这个命令可能无法执行,需要编辑一个hook(http://www.qinbin.me/svn-hook-hook-introduction/)(http://www.zeali.net/entry/533)文件,这个文件需要有执行权限
例子如下(Windows):
@ECHO OFF
set repos=%1
set rev=%2
set user=%3
set propname=%4
set action=%5
//设置超级用户,超级用户可以修改其他人的日志,其他人只能修改自己的日志
set superUser=username
//只允许日志svn:log的修改
if /I not ‘%propname%’==’svn:log’ goto ERROR_PROPNAME
//只允许修改日志,增加、删除等操作不允许
if /I not ‘%action%’==’M’ goto ERROR_ACTION*
//只允许用户修改自己的日志
for /f “usebackq” %%k in (`svnlook author %repos% -r %rev%`) do @set var=%%k
set rightUser=0
if “%3″ == “%superUser%” set rightUser=1
if “%3″ == “%var%” set rightUser=1
if %rightUser% == 0 goto ERROR_USER
goto :SUCCESS_EXIT
:ERROR_USER
echo 只允许用户修改自己的日志 >&2
goto ERROR_EXIT
:ERROR_PROPNAME
echo 只有日志信息能被修改 >&2
goto ERROR_EXIT
:ERROR_ACTION
echo 只允许修改日志,不允许增加、删除等操作 >&2
goto ERROR_EXIT
:ERROR_EXIT
exit 1
:SUCCESS_EXIT
exit 0
)
(SVN 文档http://svnbook.red-bean.com/)
IV. 用命令行防止.DS_Store文件生成
Defaults write com.apple.desktopservices DSDontWriteNetworkStores true
V. 对于使用git的情况:
增加.DS_Store到库的顶层目录下.gitignore文件
然后git add .gitignore
Git commit –m “.DS_Store remove”
全局配置方法:
Git config —global core.excludesfile = /path/to/.gitignore
然后配置这个.gitignore文件就像配置项目目录下的.gitignore文件一样
转自:http://bmanlog.sinaapp.com/?p=32
defaults write com.apple.finder AppleShowAllFiles -bool true
隐藏显示Mac隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles -bool false
II. 删除目录下的.DS_Store:
Find /path/to/files –type f –name “.DS_Store” -print –delete
或者:
Find /path/to/files –type f –name “.DS_Store” -print0 | xargs –0 rm -rdf
III. 配置SVN忽略.DS_Store文件:
svn propset svn:ignore “.DS_Store” /path/to/files
[文档 http://svnbook.red-bean.com/en/1.5/svn.ref.svn.c.propset.html]
或者配置全局配置文件:
编辑 ~/.subversion/config文件 搜索 global-ignores 然后添加 .DS_Store
(配置SVN仓库忽略.DS_Store文件:
svn propset –revprop -r HEAD svn:ignore “.DS_Store” http://svn.site.com/path/to/repository/project
但SVN仓库默认不允许队revision property做修改,所以,这个命令可能无法执行,需要编辑一个hook(http://www.qinbin.me/svn-hook-hook-introduction/)(http://www.zeali.net/entry/533)文件,这个文件需要有执行权限
例子如下(Windows):
@ECHO OFF
set repos=%1
set rev=%2
set user=%3
set propname=%4
set action=%5
//设置超级用户,超级用户可以修改其他人的日志,其他人只能修改自己的日志
set superUser=username
//只允许日志svn:log的修改
if /I not ‘%propname%’==’svn:log’ goto ERROR_PROPNAME
//只允许修改日志,增加、删除等操作不允许
if /I not ‘%action%’==’M’ goto ERROR_ACTION*
//只允许用户修改自己的日志
for /f “usebackq” %%k in (`svnlook author %repos% -r %rev%`) do @set var=%%k
set rightUser=0
if “%3″ == “%superUser%” set rightUser=1
if “%3″ == “%var%” set rightUser=1
if %rightUser% == 0 goto ERROR_USER
goto :SUCCESS_EXIT
:ERROR_USER
echo 只允许用户修改自己的日志 >&2
goto ERROR_EXIT
:ERROR_PROPNAME
echo 只有日志信息能被修改 >&2
goto ERROR_EXIT
:ERROR_ACTION
echo 只允许修改日志,不允许增加、删除等操作 >&2
goto ERROR_EXIT
:ERROR_EXIT
exit 1
:SUCCESS_EXIT
exit 0
)
(SVN 文档http://svnbook.red-bean.com/)
IV. 用命令行防止.DS_Store文件生成
Defaults write com.apple.desktopservices DSDontWriteNetworkStores true
V. 对于使用git的情况:
增加.DS_Store到库的顶层目录下.gitignore文件
然后git add .gitignore
Git commit –m “.DS_Store remove”
全局配置方法:
Git config —global core.excludesfile = /path/to/.gitignore
然后配置这个.gitignore文件就像配置项目目录下的.gitignore文件一样
转自:http://bmanlog.sinaapp.com/?p=32
相关文章推荐
- 设置SVN,Git忽略MAC的.DS_Store文件的方法
- 设置SVN,Git忽略MAC的.DS_Store文件的方法
- Git中设置全局ingore来忽略.DS_Store文件的方法
- mac电脑 Git 全局忽略.DS_Store等文件
- Mac下,git忽略.DS_Store文件
- XCODE施用git MAC 剔除DS_Store 隐藏文件 github的论说文档README.md的标记
- 关于git忽略(局部忽略、全局忽略)文件和文件夹的设置方法
- Xcode git 忽略userinterfacestate文件|.DS_Store文件
- Git设置忽略排除和重新添加已经被忽略过文件(夹)的方法
- git、svn 忽略文件设置
- [macOS] git忽略所有的.DS_Store文件
- mac 上面 git 要忽略掉 .DS_Store
- Mac客户端:设置svn屏蔽忽略文件
- WebStorm常见问题(二)如何设置svn(git)忽略文件
- 设置gitignore 全局忽略DS_Store
- Mac下如何隐藏.DS_Store文件的方法
- Mac下批量删除.DS_Store及.svn文件命令
- Mac下如何隐藏.DS_Store文件的方法
- git 忽略.DS_Store文件
- git 全局忽略.DS_Store等文件