别看用起SVN很熟,每天commit、revert很欢,真要自己在Mac上搭起来个SVN server,本地可以checkout,创建branch,merge,就没那么熟悉了。
查了查资料,过程如下:
1. 创建本地repo
localhost:~ twer$ cd
localhost:~ twer$ svnadmin create SVNRepo
2. 修改两个conf文件,打开访问权限,并添加授权用户
localhost:~ twer$ cd SVNRepo/
localhost:SVNRepo twer$ edit conf/svnserve.conf
localhost:SVNRepo twer$ edit conf/passwd
3. 创建trunk目录
localhost:SVNRepo twer$ svn mkdir file:///Users/twer/SVNRepo/trunk -m "create trunk"
4. 创建测试文件,并import到trunk
localhost:SVNRepo twer$ touch test.file
localhost:SVNRepo twer$ edit test.file
localhost:~ twer$ svn import test.file file:///Users/twer/SVNRepo/trunk/test.file -m"import file"
5. 启动svn server
localhost:~ twer$ cd SVNRepo
localhost:SVNRepo twer$ svnserve -d
6. 转移到working directory,checkout trunk
localhost:working_dir twer$ svn checkout svn://localhost/Users/twer/SVNRepo/trunk trunk
7. 新建branch
localhost:SVNRepo twer$ svn copy svn://localhost/Users/twer/SVNRepo/trunk svn://localhost/Users/twer/SVNRepo/branch -m"create branch"
8. checkout branch到新的branch目录
localhost:working_dir twer$ svn checkout svn://localhost/Users/twer/SVNRepo/branch branch
9. 修改test文件,提交
localhost:branch twer$ edit test.file
localhost:branch twer$ svn ci -m"change test.file"
10. 回到trunk目录,merge branch的变化
localhost:trunk twer$ svn merge svn://localhost/Users/twer/SVNRepo/branch