Krótko o tym jak przenieść repozytorium svn’a do git’a.
Repozytorium gita będzie znajdować się na zewnętrznym serwerze, do ktorego bedziemy laczyć się przez ssh.
Na serwerze repo_serv tworzymy nowego usera git:
root@repo_serv# useradd git -m root@repo_serv# passwd git git@repo_serv$ mkdir test.git git@repo_serv$ cd test.git git@repo_serv$ git --bare init Initialized empty Git repository in /home/git/test.git/
Na lokalnym komputerze, checkoutujemy repozytorium svnowe:
oki@localhost@$ git-svn clone svn://svn_server/test/trunk test
Initialized empty Git repository in .git/
r1 = 356f9f14174ffa6848a958f9077044ff42ad0330 (git-svn)
A plik.rb
A plik2.rb
r2 = 7c236c87146787156a9b13be258ac1bf19d2a4e1 (git-svn)
A .htaccess
r3 = cbc6d6347a960379804937ceabb4601cf82a63e9 (git-svn)
M .htaccess
r4 = e47b697bf3d658a9da4201c59797a31fef203c70 (git-svn)
M request.xml
A README
r5 = 9ab46e1a0217eb83210514969b84a95d6a8a1b8e (git-svn)
M request.xml
r6 = c6a9552257e02276605be32b9f57e09e3f4b80c6 (git-svn)
M xml-tester.rb
r7 = 81aba1c49bd8ca7f23477e4f65023163ffa1ae6e (git-svn)
M xml-tester.rb
r8 = 896ebb06ff96fe5e25275fa0b19338ddc594324d (git-svn)
M request.xml
M xml-tester.pl
r9 = 0f3448ae600d26ec51ffee6c3e5d233c7043d8c0 (git-svn)
Checked out HEAD:
svn://svn_server/test/trunk r9
Dodajemy zewnętrzne źrodło, nasze nowe nowe repozytorium git’a:
$ git remote add origin git@repo_serv:test.git
Następnie nasze zmiamy wysyłamy w świat:
oki@localhost$ git push origin master git@repo_serv's password: Counting objects: 39, done. Compressing objects: 100% (38/38), done. Writing objects: 100% (39/39), 9.41 KiB, done. Total 39 (delta 20), reused 0 (delta 0) To git@repo_serv:test.git * [new branch] master -> master
Testujemy git-clone:
oki@localhost$ git clone git@repo_serv:test.git Initialized empty Git repository in /home/oki/tmp/test/.git/ git@repo_serv's password: remote: Counting objects: 39, done. remote: Compressing objects: 100% (38/38), done. remote: Total 39 (delta 20), reused 0 (delta 0) Receiving objects: 100% (39/39), 9.05 KiB, done. Resolving deltas: 100% (20/20), done.
Dodatkowo możemy wygenerować klucze ssh dla uzytkownika git, dzięki temu nie będziemy za każdym razem przy połączeniu do serwera pytani o hasło.
* - Pola wymagane