| Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
subversion [2026/10/02 15:29] fucik [Založení nového projektu] |
subversion [2026/10/02 15:35] (current) fucik [Password for GNOME keyring] |
| ==== Konfigurace webového rozhraní SVN (preferováno) ==== | ==== Konfigurace webového rozhraní SVN (preferováno) ==== |
| |
| Toto rozhraní je užíváno SVN klienty, kteří dostanou repository udanou ve tvaru ''https://svn.ms.mff.cuni.cz/svn/PROJEKT'', tj. např.: | Toto rozhraní je užíváno SVN klienty, kteří dostanou repository udanou ve tvaru ''https://svn.ufal.mff.cuni.cz/svn/PROJEKT'', tj. např.: |
| <code> svn --username ufal checkout https://svn.ms.mff.cuni.cz/svn/$PROJEKT</code> | <code> svn --username ufal checkout https://svn.ufal.mff.cuni.cz/svn/$PROJEKT</code> |
| |
| Co se tyce svn weboveho rozhrani, modul ma nasledujici konfiguracni soubory: | Co se tyce svn weboveho rozhrani, modul ma nasledujici konfiguracni soubory: |
| Ke Git repozitarum je mozne v principu pristupovat dvema zpusoby: | Ke Git repozitarum je mozne v principu pristupovat dvema zpusoby: |
| |
| * nahledem pres Gitweb rozhrani: https://svn.ms.mff.cuni.cz/git (standardni webove overovani) | * nahledem pres Gitweb rozhrani: https://svn.ufal.mff.cuni.cz/git (standardni webove overovani) |
| |
| * git klientem pres https: <code> git clone https://svn.ms.mff.cuni.cz/git/<repository_name.git> </code> | * git klientem pres https: <code> git clone https://svn.ufal.mff.cuni.cz/git/<repository_name.git> </code> |
| |
| * pres ssh: <code> git clone user@svn.ms.mff.cuni.cz:/home/DATA/git/<repository_name>.git </code> | * pres ssh: <code> git clone user@svn.ufal.mff.cuni.cz:/home/DATA/git/<repository_name>.git </code> |
| |
| V teto konfiguraci git neumi rozlisovat RO a RW uzivatele (jedine pres ssh a ACL prava). Pri pristupu pres https | V teto konfiguraci git neumi rozlisovat RO a RW uzivatele (jedine pres ssh a ACL prava). Pri pristupu pres https |
| Toto rozhraní je užíváno SVN klienty, kteří dostanou repository udanou ve tvaru ''svn...'', tj. např.: | Toto rozhraní je užíváno SVN klienty, kteří dostanou repository udanou ve tvaru ''svn...'', tj. např.: |
| |
| svn --username ufal checkout svn://svn.ms.mff.cuni.cz/$PROJEKT | svn --username ufal checkout svn://svn.ufal.mff.cuni.cz/$PROJEKT |
| |
| Pristupova prava pro svn protokol se urcuji pro kazdy projekt nezavisle, v adresari conf v dane repository (jak je vytvorena mym skriptem), tj. napr.: | Pristupova prava pro svn protokol se urcuji pro kazdy projekt nezavisle, v adresari conf v dane repository (jak je vytvorena mym skriptem), tj. napr.: |
| <code>permission add $USER TRAC_ADMIN</code> | <code>permission add $USER TRAC_ADMIN</code> |
| |
| Ve webovém rozhraní (https://svn.ms.mff.cuni.cz/projects/$PROJEKT) se pak objeví tlačítko //Admin//. V něm ještě klikněte na //Plugins//, pak na doplněk //IniAdmin0.2// a povolte ho. Tím se na administrátorské stránce zpřístupní i všechna nastavení z ''trac.ini''. | Ve webovém rozhraní (https://svn.ufal.mff.cuni.cz/projects/$PROJEKT) se pak objeví tlačítko //Admin//. V něm ještě klikněte na //Plugins//, pak na doplněk //IniAdmin0.2// a povolte ho. Tím se na administrátorské stránce zpřístupní i všechna nastavení z ''trac.ini''. |
| |
| **Upozornění:** V sekci //Permissions// vidíte a můžete měnit práva uživatelů k jednotlivým operacím v Tracu. Nějaká práva mohou mít (a defaultně mají) i anonymní uživatelé, ale vzhledem k tomu, že naše instalace Tracu si vynucuje přihlášení, žádný uživatel by neměl být anonymní. Pokud někomu sdělíte uživatelské jméno ''ufalr'' (a heslo, které k němu uvidíte v konfiguračním souboru ''passwd'' vašeho projektu po jeho založení), dali jste mu read-only přístup do repozitáře svn (přes protokol svn), ale v Tracu může některé věci i měnit (libovolný neanonymní uživatel defaultně může psát do tracové wiki, zakládat a měnit tickety). To proto, že pro Trac už to není anonym, nýbrž "authenticated user". | **Upozornění:** V sekci //Permissions// vidíte a můžete měnit práva uživatelů k jednotlivým operacím v Tracu. Nějaká práva mohou mít (a defaultně mají) i anonymní uživatelé, ale vzhledem k tomu, že naše instalace Tracu si vynucuje přihlášení, žádný uživatel by neměl být anonymní. Pokud někomu sdělíte uživatelské jméno ''ufalr'' (a heslo, které k němu uvidíte v konfiguračním souboru ''passwd'' vašeho projektu po jeho založení), dali jste mu read-only přístup do repozitáře svn (přes protokol svn), ale v Tracu může některé věci i měnit (libovolný neanonymní uživatel defaultně může psát do tracové wiki, zakládat a měnit tickety). To proto, že pro Trac už to není anonym, nýbrž "authenticated user". |
| mkdir $PROJ/branches | mkdir $PROJ/branches |
| mkdir $PROJ/tags | mkdir $PROJ/tags |
| svn --username $USER import $PROJ https:///svn.ms.mff.cuni.cz/svn/$REP/$PROJ --message 'Initial import' | svn --username $USER import $PROJ https:///svn.ufal.mff.cuni.cz/svn/$REP/$PROJ --message 'Initial import' |
| cd .. | cd .. |
| svn checkout -q https:///svn.ms.mff.cuni.cz/svn/$REP/$PROJ/trunk $PROJ | svn checkout -q https:///svn.ufal.mff.cuni.cz/svn/$REP/$PROJ/trunk $PROJ |
| rm -rf tmp | rm -rf tmp |
| rm -rf $PROJ.old</code> | rm -rf $PROJ.old</code> |
| Vzhledem k tomu, že URL ve výše uvedeném hlášení začíná <nowiki>"file://",</nowiki> jde o lokální repozitář. Nyní je tedy potřeba založit prázdný serverový repozitář podle postupu uvedeného výše. | Vzhledem k tomu, že URL ve výše uvedeném hlášení začíná <nowiki>"file://",</nowiki> jde o lokální repozitář. Nyní je tedy potřeba založit prázdný serverový repozitář podle postupu uvedeného výše. |
| |
| <code>ssh svn.ms.mff.cuni.cz | <code>ssh svn.ufal.mff.cuni.cz |
| /home/howto/create_new_project.sh interset | /home/howto/create_new_project.sh interset |
| cd /home/svn/repos/interset/conf | cd /home/svn/repos/interset/conf |
| |
| <code>svnadmin dump /net/work/public/SVN/interset > interset.svndump | <code>svnadmin dump /net/work/public/SVN/interset > interset.svndump |
| scp interset.svndump svn.ms.mff.cuni.cz:/home/zeman | scp interset.svndump svn.ufal.mff.cuni.cz:/home/zeman |
| rm interset.svndump | rm interset.svndump |
| ssh svn.ms.mff.cuni.cz | ssh svn.ufal.mff.cuni.cz |
| svnadmin load /home/svn/repos/interset < interset.svndump | svnadmin load /home/svn/repos/interset < interset.svndump |
| rm interset.svndump | rm interset.svndump |
| cd .. | cd .. |
| mv interset interset.localwc | mv interset interset.localwc |
| svn --username zeman checkout https://svn.ms.mff.cuni.cz/svn/interset/trunk | svn --username zeman checkout https://svn.ufal.mff.cuni.cz/svn/interset/trunk |
| mv trunk interset | mv trunk interset |
| cd interset</code> | cd interset</code> |
| Potom budu postupovat podobně jako při stěhování lokálního repozitáře SVN na server popsaném výše. | Potom budu postupovat podobně jako při stěhování lokálního repozitáře SVN na server popsaném výše. |
| |
| <code>scp biblio.svndump svn.ms.mff.cuni.cz:/home/zeman | <code>scp biblio.svndump svn.ufal.mff.cuni.cz:/home/zeman |
| rm biblio.svndump | rm biblio.svndump |
| ssh svn.ms.mff.cuni.cz | ssh svn.ufal.mff.cuni.cz |
| svnadmin load /home/svn/repos/biblio < biblio.svndump | svnadmin load /home/svn/repos/biblio < biblio.svndump |
| rm biblio.svndump</code> | rm biblio.svndump</code> |
| The following code should undo the changes between the revisions 302 and 303 (note the minus sign before 303, meaning negative change) while keeping the other changes between 303 and HEAD. | The following code should undo the changes between the revisions 302 and 303 (note the minus sign before 303, meaning negative change) while keeping the other changes between 303 and HEAD. |
| |
| <code>svn merge -c -303 https://svn.ms.mff.cuni.cz/svn/$REPOSITORY/$PROJECT/trunk | <code>svn merge -c -303 https://svn.ufal.mff.cuni.cz/svn/$REPOSITORY/$PROJECT/trunk |
| # alternatively: svn merge -r 303:302 https://svn.ms.mff.cuni.cz/svn/$REPOSITORY/$PROJECT/trunk | # alternatively: svn merge -r 303:302 https://svn.ufal.mff.cuni.cz/svn/$REPOSITORY/$PROJECT/trunk |
| svn status | svn status |
| svn diff | svn diff |
| <code bash>zeman@zen:~/projekty/statmt$ svn update | <code bash>zeman@zen:~/projekty/statmt$ svn update |
| Password for '(null)' GNOME keyring: | Password for '(null)' GNOME keyring: |
| svn: OPTIONS of 'https://svn.ms.mff.cuni.cz/svn/statmt/trunk': authorization failed: Could not authenticate to server: rejected Basic challenge (https://svn.ms.mff.cuni.cz)</code> | svn: OPTIONS of 'https://svn.ufal.mff.cuni.cz/svn/statmt/trunk': authorization failed: Could not authenticate to server: rejected Basic challenge (https://svn.ufal.mff.cuni.cz)</code> |
| |
| First, what is the Gnome keyring? According to [[http://en.wikipedia.org/wiki/GNOME_Keyring|Wikipedia]], it is a daemon application designed to take care of the user's security credentials, such as user names and passwords. The sensitive data is encrypted and stored in a keyring file in the user's home folder. The default keyring uses the login password for encryption, so users don't need to remember yet another password. | First, what is the Gnome keyring? According to [[http://en.wikipedia.org/wiki/GNOME_Keyring|Wikipedia]], it is a daemon application designed to take care of the user's security credentials, such as user names and passwords. The sensitive data is encrypted and stored in a keyring file in the user's home folder. The default keyring uses the login password for encryption, so users don't need to remember yet another password. |