Posted under » Version Control on 22 March 2019
Checkout command is used to download sources from SVN repository to working copy. However, you have to create a folder with the www-data permission and chmod 775 in your SVN server using the svnadmin command.
$ cd /var/svn $ svnadmin create repos
If somehow you get a permission error, use root to svnadmin and then change back the owner to www-data.
If you used to update from another SVN server, its best you check which SVN server you are using with the SVN info command to prevent getting the wrong stuff.
If you want to stop using a particular server, you should delete all the .svn files on all the folders. However, this is not necessary in SVN version 1.7 as there is only one .svn folder you have to deal with.
If you want to access files from the SVN server, checkout is the first operation you should perform.
svn co https://svn.com.sg/svn/anoneh /var/www/anoneh/
co = checkout
It is best that you begin with an empty directory. However, a directory with files is ok. You will need to add them later.
Then you add files to it.
svn add * svn add * --force (recursive)
Suppose you want to add only new files.
svn status | grep '?' | sed 's/^.* /svn add /' | bash
Then commit.
svn commit svn commit -m "Fixed a regression that prevented pigs from flying (resolves issue #123, but causes strange behavior elsewhere)"
If you are getting the "SVN commit failed: Directory out of date" error, you need to SVN up first.
It's quite convenient to ADD using wildcards (*) but There are times you regret adding a folder. To cancel an "svn add example_folder" command before committing to the repository, do not use svn delete or svn remove or made-up stuff like undo or cancel. Use the svn revert command:
svn revert --recursive example_folder
If you already committed but you want to ignore it, then delete it with a --keep-local option.
svn delete --keep-local example_folder
Its fast and like Rsync by sending only the differences between the source files and the existing files in the destination.
After this, instead of checkout, you do update often to keep your directory updated. This is useful command if you want to update your production server because you only put things that has been committed by your team.
svn update /var/www/anoneh/