0


I install SVN server on Ubuntu, my repository location is "var/lib/svn/myproject"
http://www.howtoforge.com/installing-subversion-and-configuring-access-through-different-protocols-on-ubuntu-11.10
then: I create a file "index.php" in myproject

on another PC (win7) (where I can access my Ubuntu via SSH and http), I install TortoiseSVN
I create new folder called WC, I write-click on WC then choose SVN checkout, I put my repository path (http://xxx.xxx.xxx.xxx/svn/myproject/) and it done successfully

MY QUESTION: should 'checkout' download myproject folder contents? (index.php file)? it does not download any file from myproject folder!
ANOTHER QUESTION: when I create some new file x.x in WC and commit it, it done successfully, but should I find this file in /var/lib/svn/myproject?? I don't find it
have you any idea
many thanks!

jodi
  • 31
  • 5
  • It's not clear from your description whether `/var/lib/svn/myproject` is a repository or a working copy but you're obviously trying to do both things with it. The difference between those concepts is a key Subversion concept. – Álvaro González Feb 05 '14 at 16:04
  • /var/www/svn/myprojct is a repository, while work area is a folder in my PC – jodi Feb 05 '14 at 16:06
  • Alright. You simply don't add files to your repository. That's not how Subversion works. I'll try to find a duplicate question. – Álvaro González Feb 05 '14 at 16:07
  • 1
    Don't copy `index.php` anywhere under `/var/lib/svn/myproject`. Instead, create a working copy of the repository with `svn checkout`. Then add `index.php` to the working copy with `svn add`. Finally, run `svn commit` to store `index.php` in the repository. – Chad Nouis Feb 05 '14 at 16:08
  • thx, my needs is the following:
    I have a developers team, they are developing online website on my server, I want they update and develop my website via SVN and all modifications and updates applied on my online site
    – jodi Feb 05 '14 at 16:14
  • so svn does not stores committed files physically? so no one can see this file physically on my repository on server? so it holds only information – jodi Feb 05 '14 at 16:15
  • @jodi - It's a database with its own internal format. Just imagine you had 2,000 revisions and Subversion had to store 2,000 copies of your complete project. – Álvaro González Feb 06 '14 at 11:38

1 Answers1

0

First, I'd recommend using a Subversion host so you don't have to worry as much about the server-side configuration issues and maintenance. My company, ProjectLocker, is one of many companies that do this.

To answer your question, think about this in terms of a server and a client. The server is your master repository, containing all your history and details, and is not to be seen directly be a developer. This is what TortoiseSVN talks to. The client is TortoiseSVN, and it will keep a copy of files on your local machine representing the current state of what you're working on.

If you're working in Tortoise, that means your development machine is Windows. Any updates that you wish to go into Subversion should be done on the Windows machine. You should not have to log into Ubuntu to do anything regarding commits, checkouts, or updates; only adding and deleting users and setting permissions or special hooks.

To answer your questions more directly:

  1. Putting files in your Subversion directory in Ubuntu will at best have no effect and at worst damage the repository. Subversion keeps the files in a special format, and you'll need to use a client to change them. So based on what you did, no, no files should have come down when you did the checkout.

  2. When you put the index.php in a directory on your Windows machine visible to TortoiseSVN, then add and commit it, the file will be available in Subversion, but it will be stored as a revision in the special format I mentioned earlier. The only ways to get it out would be through a Subversion checkout or a Subversion export.

brokenbeatnik
  • 720
  • 6
  • 15
  • Glad to help! If I solved your problem, you can accept my answer, which both gives me points and makes people more likely to answer your questions in the future. If not, let me know how else I can help. – brokenbeatnik Feb 12 '14 at 22:23