版本控制之SVN

SVN在windows下有很不错GUI可以用,如果在linux可以 使用命令行,下面的介绍摘自http://www.divvun.no/doc/tools/docu-svn-user.htm
工作其实还会试用git svn,这个比较复杂,暂时没发现有GUI可以用,都是命令,所以了解一些命令还是很有用的;

svn on the command line

To check out means that you copy all the documents that our projects are working on to your computer.

The first commands

Go to your home directory (write cd), and give the following command:

svn co https://victorio.uit.no/langtech/trunk main --username <your_username>

... where you have replaced <your_username> with the username you have aquired from the admin. This will enable you to check in your work. If you don't have a user name or just want to browse our code, just skip the username.

After you have checked out, please run the following script, and follow the on-screen instructions:

main/gt/script/gtsetup.sh

With the above commands, you have now on your local computer a copy of the source code and the environment is set up properly.

 

Frequently used commands

Now that you have checked out your repository, you can use a set of commands to manipulate your copy of the source code. We recommend to always update the repository before you begin to edit files inside it. After having edited some files you usually want to have an overview of which files have been modified. To share our work with the others we check in our work. We can also adddeletemove and copy files inside the repository. A brief overview of the commands needed for these actions is given below, for further details see the references at the end of this document.

Update your working copy
svn up
Scedule a file for addition
svn add filename
Scedule a file for deletion
svn delete filename
You may also copy and move files and directories with these two commands, but read about them in the svn book first:
svn copy filename
svn move filename
Examine your changes
svn status
Examine the file history
svn log FILE
Change the commit message for a specific revision
svn propedit svn:log --revprop -r REV FILE 
This will bring up the existing log text for the specified revision in your default editor (typically Emacs), where you can edit and change it as you want. This is useful if you accidentally committed some changes with an empty or uninformative log message.
Compare your modified file to the version in the repository
svn diff FILE
Compare some earlier versions, say here versions 123 and 120
svn diff -r 123:120 FILE
Undo your local changes (ie revert to the repository status)
svn revert FILE
Resolve Conflicts (Merge Others' Changes)
svn update
svn resolved
Commit your changes
svn ci -m "Your description of the changes here." FILE 
(Note that the above changes, add, delete, copy, move, must all be committed by ci in order to take effect)

Ignoring items

The Subversion svn:ignore property is very similar in syntax and function to the CVS .cvsignore file. In fact, if you are migrating a CVS working copy to Subversion, you can directly migrate the ignore patterns by using the .cvsignore file as input file to the svn propset command:

$ svn propset svn:ignore -F .cvsignore . 
property 'svn:ignore' set on '.' 
$

More details about ignoring files can be found in Chapter 3: Advanced Topics, in the section Ignoring Unversioned Items, in the SVN book.

Daily routines

  • Update in the morning, and allways before you check in.
  • Always check in the files at the end of the day.
  • If you know that other people are working on the same file, you should check in several times a day.
  • Check in after you have done major revisions.
  • Remember to compile the program before you check in, so that you know you do not check in a defect file.

What do I write in the log message

The best way to learn to write good log messages is to read other log messages. Pick a file (e.g. twol-sme.txt, sme-lex.fst), and read the log (the command is svn log filename | less). If the log message tells you what you want to know, then it is a good log message.

In svn it is possible to edit and correct bad log messages. See the list of useful commands above for how to do this.

Further reading

The Basic work cycle in the SVN book covers daily usage in great detail. Appendix B covers some details for users accustomed to CVS.

The RapidSVN wiki has a tutorial that covers our daily usage pattern.

转载于:https://www.cnblogs.com/avenwu/archive/2012/06/24/2559900.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值