This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
svn:start [2012/07/20 12:00] jakub.moron |
svn:start [2022/12/21 17:08] (current) marek.idzik |
||
---|---|---|---|
Line 4: | Line 4: | ||
* [[http://subversion.apache.org/ | SVN Project website ]] | * [[http://subversion.apache.org/ | SVN Project website ]] | ||
* SVN Book [[http://svnbook.opensys.pl/ | PL ]] [[ http://svnbook.red-bean.com/ | ENG ]] | * SVN Book [[http://svnbook.opensys.pl/ | PL ]] [[ http://svnbook.red-bean.com/ | ENG ]] | ||
- | * [[ http://svn.lumifun.ftj.agh.edu.pl/ ]] (doesn't work yet) | + | * [[ http://svn.asic.fis.agh.edu.pl/ ]] |
+ | |||
+ | ===== SVNShell & SmartSVN ===== | ||
+ | {{:svn:svnshell.tar| SVNShell_script}} **DO NOT USE -- OLD**\\ | ||
+ | {{:svn:smartsvn.tar| SmartSVN_script}} **DO NOT USE -- OLD**\\ | ||
+ | Download, untar (''tar -xf name.tar'') and add to ''$PATH''. | ||
===== Administrators ===== | ===== Administrators ===== | ||
- | * SVN administrator : **Szymon Kulis** | + | * SVN administrators : **Kuba Moron**, **Szymon Kulis** |
- | * People who can help : **Krzysztof Swientek**, **Kuba Moron** | + | * People who can help : **Krzysztof Swientek** |
===== Using SVN ===== | ===== Using SVN ===== | ||
Line 18: | Line 23: | ||
==== Starting svn shell ==== | ==== Starting svn shell ==== | ||
- | Before you start using svn you have to start svn shell (or provide keys to ssh client in diferent way) | + | Before you start using svn you have to start **svnshell**. The main function of this script is to simplify key management, you will be asked only once to enter yours pass-phrase at script startup (if you don't like this script you may configure your ssh client in different way). Script is pre-installed on all production servers (koi, ibm). To start shell, just type: |
<code> svnshell </code> | <code> svnshell </code> | ||
You should see modified prompt : | You should see modified prompt : | ||
<code> [SVN] promt$ </code> | <code> [SVN] promt$ </code> | ||
+ | |||
+ | **Notes:** | ||
+ | * script assumes existence of public/private-key named **svn** and **svn.pub** in yours **.ssh** directory (''.ssh/svn'' and ''.ssh/svn.pub'') | ||
+ | * script doesn't have any significant dependencies you may copy it to you workstation and use it | ||
+ | * script source is in ''svn : cds_etc/trunk/etc/svn_scripts/svnshell'' | ||
Line 27: | Line 37: | ||
==== Getting repository ==== | ==== Getting repository ==== | ||
To get local copy of repository : | To get local copy of repository : | ||
- | <code> svn checkout svn+ssh://svn@lumifun.ftj.agh.edu.pl/REPOSITORY_NAME </code> | + | <code> svn checkout svn+ssh://svn@asic.fis.agh.edu.pl/REPOSITORY_NAME </code> |
- | or optionaly | + | or optionally |
- | <code> svn checkout svn+ssh://svn@lumifun.ftj.agh.edu.pl/REPOSITORY_NAME/trunk REPOSITORY_NAME </code> | + | <code> svn checkout svn+ssh://svn@asic.fis.agh.edu.pl/REPOSITORY_NAME/trunk REPOSITORY_NAME </code> |
==== Update ==== | ==== Update ==== | ||
Line 64: | Line 74: | ||
<code> smartsvn.py </code> | <code> smartsvn.py </code> | ||
+ | |||
+ | ==== How to revert to a previous revision ==== | ||
+ | - make sure that you haven't made any changes to you repository. If you changed something, it will cause problems. The easies way is to <code>rm ./* | ||
+ | svn update</code> | ||
+ | - use this command to see what is going to be changed when you go from current revision to **NNN** revision of **dir** <code>svn merge -rHEAD:NNN dir</code> | ||
+ | - if you like action proposed by previous command, just remove **--dry-run** to revert: <code>svn merge --dry-run -rHEAD:NNN dir</code> | ||
+ | - real life example <code>cd AMS400/EUDET_VI_AMS/ | ||
+ | svn merge -rHEAD:128 .</code> | ||
===== Setting up svn ===== | ===== Setting up svn ===== | ||
Line 79: | Line 97: | ||
Editor to be invoked is specified by environmental variable SVN_EDITOR. To change | Editor to be invoked is specified by environmental variable SVN_EDITOR. To change | ||
default editor you should set this variable in yours ''~/.bashrc'' file, e.g: | default editor you should set this variable in yours ''~/.bashrc'' file, e.g: | ||
- | <code> export SVN_EDITOR=vim </code> | + | <code> export SVN_EDITOR=gvim </code> |
===== typical use case ===== | ===== typical use case ===== | ||
Line 115: | Line 133: | ||
Last Changed Date: ... | Last Changed Date: ... | ||
- | $svn switch --relocate http://svn.lumifun.ftj.agh.edu.pl/YOUR_REPO svn+ssh://svn@lumifun.ftj.agh.edu.pl/YOUR_REPO . | + | $svn switch --relocate http://svn.lumifun.ftj.agh.edu.pl/YOUR_REPO svn+ssh://svn@asic.fis.agh.edu.pl/YOUR_REPO . |
</code> | </code> | ||
Line 123: | Line 141: | ||
$cd ~/IBM013/EUDET_VI_IBM | $cd ~/IBM013/EUDET_VI_IBM | ||
- | $ svn info | + | $ svn info |
- | Ścieżka: . | + | Ścieżka: . |
- | URL: http://svn.lumifun.ftj.agh.edu.pl/EUDET_VI_IBM/trunk | + | URL: http://svn.lumifun.ftj.agh.edu.pl/EUDET_VI_IBM/tunk |
- | Katalog główny repozytorium: http://svn.lumifun.ftj.agh.edu.pl/EUDET_VI_IBM | + | Katalog główny repozytorium: http://svn.lumifun.ftj.agh.edu.pl/EUDET_VI_IBM |
- | UUID repozytorium: 134063e6-8b79-43c4-80ea-df54b304f938 | + | UUID repozytorium: 134063e6-8b79-43c4-80ea-df54b304f938 |
- | Wersja: 789 | + | Wersja: 789 |
- | Rodzaj obiektu: katalog | + | Rodzaj obiektu: katalog |
- | Zlecenie: normalne | + | Zlecenie: normalne |
- | Autor ostatniej zmiany: przyboro | + | Autor ostatniej zmiany: przyboro |
- | Ostatnio zmieniona wersja: 789 | + | Ostatnio zmieniona wersja: 789 |
Data ostatniej zmiany: 2012-05-18 15:57:54 +0200 (pią) | Data ostatniej zmiany: 2012-05-18 15:57:54 +0200 (pią) | ||
- | $svn sw --relocate http://svn.lumifun.ftj.agh.edu.pl/EUDET_VI_IBM/trunk svn+ssh://svn@lumifun.ftj.agh.edu.pl/EUDET_VI_IBM/trunk . | + | $svn sw --relocate http://svn.lumifun.ftj.agh.edu.pl/EUDET_VI_IBM/trunk svn+ssh://svn@asic.fis.agh.edu.pl/EUDET_VI_IBM/trunk . |
- | [SVN] moron@hal:~/IBM013/EUDET_VI_IBM$ svn info | + | |
- | Ścieżka: . | + | $ svn info |
- | URL: svn+ssh://svn/EUDET_VI_IBM/trunk | + | Ścieżka: . |
- | Katalog główny repozytorium: svn+ssh://svn/EUDET_VI_IBM | + | URL: svn+ssh://svn@asic.fis.agh.edu.pl/EUDET_VI_IBM/trunk |
+ | Katalog główny repozytorium: svn+ssh://svn@asic.fis.agh.edu.pl/EUDET_VI_IBM | ||
UUID repozytorium: 134063e6-8b79-43c4-80ea-df54b304f938 | UUID repozytorium: 134063e6-8b79-43c4-80ea-df54b304f938 | ||
Wersja: 789 | Wersja: 789 | ||
Line 150: | Line 169: | ||
</code> | </code> | ||
+ | ===== Relocate to asic ===== | ||
+ | |||
+ | To relocate **YOUR_REPO** from lumifun to asic please follow the instructions given below: | ||
+ | - Go to **YOUR_REPO** directory <code>$ cd path_to_YOUR_REPO </code> | ||
+ | - Check current URL **(third line below between > and <)**<code>$ svn info | ||
+ | Path: . | ||
+ | URL: >>> svn+ssh://[email protected]/YOUR_REPO <<< | ||
+ | Repository Root: svn+ssh://[email protected]/YOUR_REPO | ||
+ | Repository UUID: a855ac54-1f2a-4fde-b2df-7ae56cbf9e90 | ||
+ | Revision: 107 | ||
+ | Node Kind: directory | ||
+ | Schedule: normal | ||
+ | Last Changed Author: someone | ||
+ | Last Changed Rev: 1 | ||
+ | Last Changed Date: 2014-02-08 17:47:30 +0100 (Sat, 08 Feb 2014) | ||
+ | </code> | ||
+ | - Run svnshell | ||
+ | - Copy current URL (between > and < above) and perform command:<code> | ||
+ | $ svn sw --relocate CURRENT_URL_FROM_SVN_INFO svn+ssh://[email protected]/YOUR_REPO | ||
+ | </code> | ||
+ | ===== Windows ===== | ||
+ | - Install putty using installer (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) | ||
+ | - Use **puttygen.exe** to generate keys | ||
+ | - enter ** PASSPHRASE ** | ||
+ | - change key lenght to **2048 RSA** | ||
+ | - move mouse during key generation | ||
+ | - after generation **save keys to disk** (both private and public) | ||
+ | - **send** public key to SVN administrator | ||
+ | - Open putty | ||
+ | - go to Session -> Connection -> SSH -> Auth | ||
+ | - click the "Browse..." button and select the ppk file that you just saved using PuTTYgen | ||
+ | - now return to the "Session" category | ||
+ | * enter hostname : **lumifun.ftj.agh.edu.pl** | ||
+ | * saved sessions : **lumifun** | ||
+ | * clic **save** | ||
+ | - Open TortoiseSVN -> Settings | ||
+ | * Select the **Network configuration** and point the SSH client to **TortoisePlink.exe** (location where you installed Tortoise) | ||
+ | - Use svn, ass a path to repository use <code>svn+ssh://[email protected]/REPO_NAME</code> | ||
+ | - To avoid entering passphrase each time you need: | ||
+ | * run **pageant.exe** (putty instalation directory) | ||
+ | * click on your private key to unlock it | ||
+ | * You need to do it after each reboot |