Difference between revisions of "Subversion"
(change the table format) |
(Restructure to put the repository details first, so svn-familiar users can jump right in. Fix heading sizes.) |
||
Line 1: | Line 1: | ||
+ | =Repository URLs= | ||
+ | The various base URLs look like: | ||
+ | |||
+ | anonymous: http://svn.gnucash.org/repo/gnucash/trunk | ||
+ | developer: svn+ssh://username@svn.gnucash.org/repo/gnucash/trunk | ||
+ | trac: http://svn.gnucash.org/trac | ||
+ | |||
+ | =Common Commands= | ||
+ | |||
+ | To get what used to be CVS HEAD (and now includes what used to be gnucash-gnome2-dev), you will need to get the svn TRUNK: | ||
+ | |||
+ | svn checkout <nowiki>http://svn.gnucash.org/repo/gnucash/trunk</nowiki> gnucash | ||
+ | |||
+ | The argument "gnucash" above can be whatever you want your local directory to be called, and is optional. If you leave it out, you'll have a directory called "trunk" created containing all the source code. | ||
+ | |||
+ | If you want the latest 1.8.x code, you'd need to pull from the 1.8 branch, as follows: | ||
+ | |||
+ | svn checkout <nowiki>http://svn.gnucash.org/repo/gnucash/branches/1.8</nowiki> gnucash-1.8 | ||
+ | |||
+ | And if you want the released code for a specific release (or tag), you'd use: | ||
+ | |||
+ | svn checkout <nowiki>http://svn.gnucash.org/repo/gnucash/tags/1.8.12</nowiki> gnucash-1.8.12 | ||
+ | |||
+ | And to update, just cd into the directory containing the sources you want updated and execute a simple | ||
+ | |||
+ | svn update | ||
+ | |||
+ | Please examine the [http://svn.gnucash.org/trac/file/gnucash/trunk/README.svn README.svn] file for notes on compiling gnucash, and the [http://svn.gnucash.org/trac/file/gnucash/trunk/HACKING HACKING] file for notes on hacking the code. | ||
+ | |||
+ | = SVN tutorial = | ||
+ | |||
Now that the gnucash repository is using svn for version control (since 2005-11-04), the need for a quick tutorial on how to get the sources might be in order. There was some introduction about SVN in an [http://lists.gnucash.org/pipermail/gnucash-devel/2005-October/014333.html e-mail] on gnucash-devel: | Now that the gnucash repository is using svn for version control (since 2005-11-04), the need for a quick tutorial on how to get the sources might be in order. There was some introduction about SVN in an [http://lists.gnucash.org/pipermail/gnucash-devel/2005-October/014333.html e-mail] on gnucash-devel: | ||
− | The excellent "[http://svnbook.red-bean.com/ Version Control with Subversion] is a very good resource | + | The excellent "[http://svnbook.red-bean.com/ Version Control with Subversion] is a very good resource for information about subversion. |
− | for information about subversion. | ||
Specifically, [http://svnbook.red-bean.com/en/1.1/ch03.html Chapter 3. Guided Tour] | Specifically, [http://svnbook.red-bean.com/en/1.1/ch03.html Chapter 3. Guided Tour] | ||
Line 13: | Line 43: | ||
The bottom line is that getting the source via svn isn't altogether different from getting it using cvs. | The bottom line is that getting the source via svn isn't altogether different from getting it using cvs. | ||
− | + | =CVS to SVN cross reference= | |
{| cellpadding="2" cellspacing="0" border="1" | {| cellpadding="2" cellspacing="0" border="1" | ||
| *CVS command* | | *CVS command* | ||
Line 76: | Line 106: | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Enjoy! | Enjoy! |
Revision as of 14:31, 4 December 2005
Repository URLs
The various base URLs look like:
anonymous: http://svn.gnucash.org/repo/gnucash/trunk developer: svn+ssh://username@svn.gnucash.org/repo/gnucash/trunk trac: http://svn.gnucash.org/trac
Common Commands
To get what used to be CVS HEAD (and now includes what used to be gnucash-gnome2-dev), you will need to get the svn TRUNK:
svn checkout http://svn.gnucash.org/repo/gnucash/trunk gnucash
The argument "gnucash" above can be whatever you want your local directory to be called, and is optional. If you leave it out, you'll have a directory called "trunk" created containing all the source code.
If you want the latest 1.8.x code, you'd need to pull from the 1.8 branch, as follows:
svn checkout http://svn.gnucash.org/repo/gnucash/branches/1.8 gnucash-1.8
And if you want the released code for a specific release (or tag), you'd use:
svn checkout http://svn.gnucash.org/repo/gnucash/tags/1.8.12 gnucash-1.8.12
And to update, just cd into the directory containing the sources you want updated and execute a simple
svn update
Please examine the README.svn file for notes on compiling gnucash, and the HACKING file for notes on hacking the code.
SVN tutorial
Now that the gnucash repository is using svn for version control (since 2005-11-04), the need for a quick tutorial on how to get the sources might be in order. There was some introduction about SVN in an e-mail on gnucash-devel:
The excellent "Version Control with Subversion is a very good resource for information about subversion.
Specifically, Chapter 3. Guided Tour and Appendix A. Subversion for CVS Users are relevant.
The command-line client `svn` has a nice integrated help system; `svn help` will provide the top-level command list, and `svn help <command>` detailed help for the specific command.
The bottom line is that getting the source via svn isn't altogether different from getting it using cvs.
CVS to SVN cross reference
*CVS command* | *SVN command* | *notes* |
cvs checkout | svn checkout | |
cvs commit | svn commit | |
cvs status | svn status | ...but the svn one is actually useful :) |
cvs log | svn log | |
cvs annotate | svn blame | |
cvs diff | svn diff | |
cvs update | svn update, svn switch | |
cvs update -C | svn revert | |
cvs update -j [...] | svn merge | |
---- | svn resolved [conflicting merges must be explicitly resolved] | |
cvs add | svn add, svn mkdir | |
cvs remove | svn delete | |
---- | svn move | |
cvs [r]tag [-b] | svn copy |
Enjoy!