W Subversion Czy Mogę być użytkownikiem innym niż mój login?

Chciałbym wiedzieć, jak zmusić Subversion do zmiany nazwy, pod którą pojawiają się moje zmiany.

Właśnie zaczynam używać Subversion. Obecnie używam go do kodu kontroli wersji na laptopie XP, gdzie zawsze jestem zalogowany pod nazwiskiem mojej żony. Chciałbym, aby subversion DB pokazywał zmiany pod moim nazwiskiem.

Później powtórzę DB, żeby było dostępne dla całego domu. Moja żona korzysta z komputera biurowego, gdzie zawsze jest zalogowana pod moim nazwiskiem. Pewnie ustawię to tak że automatycznie sprawdza w zmienionych dokumentach... najlepiej na jej nazwisko.

W końcu prawdopodobnie będę używać go z komputera z Linuksem pod inną nazwą użytkownika.

Czy istnieje jakiś sposób, aby zmodyfikować środowisko użytkownika, aby zmienić nazwę użytkownika, którą nazywa cię Subversion? Spodziewałbym się czegoś takiego jak ustawienie SVN_USERNAME='Mark', które by nadpisało, jednak zwykle dostaje nazwę.

Update: wygląda na to, że --username flaga, o której mówił Michael, działa, aby zmienić nazwę raportowane przez "svn stat", nawet dla repozytoriów plików lokalnych. Ponadto jest lepki, więc nie musisz go określać dla następnego polecenia. Nawet zrestartowałem i nadal używałem wartości "--username" z mojego poprzedniego rozruchu.

Author: Carrie Kendall, 2009-01-02

13 answers

Większość poleceń Subversion używa opcji --username, aby określić nazwę użytkownika, której chcesz użyć w repozytorium. Subversion zapamiętuje ostatnią nazwę użytkownika repozytorium i hasło użyte w każdej kopii roboczej, co oznacza między innymi, że jeśli użyjesz svn checkout --username myuser, nigdy nie będziesz musiał ponownie podawać nazwy użytkownika.

Jak mówi Kamil Kisiel , gdy Subversion uzyskuje dostęp do repozytorium bezpośrednio z systemu plików( tzn. adres URL repozytorium ma postać file:///path/to/repo lub file://file-server/path/to/repo), używa Twojego pliku uprawnienia systemowe dostępu do repozytorium. I kiedy[11]}połączysz się poprzez tunelowanie SSH (svn+ssh://server/path/to/repo), SVN używa Twoich uprawnień FS na serwerze , określonych przez twój login SSH. W takich przypadkach svn checkout --username może nie działać w Twoim repozytorium.

 264
Author: Michael Ratanapintha,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-31 08:27:42

Dla svn nad ssh spróbuj:

svn list svn+ssh://[user_name]@server_name/path_to_repo  

Svn zapyta Cię o hasło user_name.

 70
Author: aminalid,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-28 15:12:27

Możesz ustawić domyślną nazwę Użytkownika przez ~/.subversion / serwery:

[groups]
yourgroupname = svn.example.com

[yourgroupname]
username = yourusername

Należy pamiętać, że starsze wersje svn go nie obsługują (np. 1.3.1 [sic!]).

 38
Author: blueyed,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-30 17:49:36
"svn co --username=yourUserName --password=yourpassword http://path-to-your-svn"

Pracował dla mnie, gdy na innym koncie użytkownika. Zostaniesz poproszony o ponowne wprowadzenie nazwy użytkownika/hasła. Musisz się zalogować jak wyżej raz i jesteś ustawiony na kolejne czasy (chyba że ponownie uruchomisz komputer).

 31
Author: chethan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-27 07:43:52

Jeśli chcesz podać nazwę użytkownika inną niż zalogowany użytkownik do korzystania z svn+ssh po prostu dodaj wpis do swojego .plik SSH / config :

Host example.com
User jdoe
 12
Author: Aaron Dancygier,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-07-04 02:16:34

Subversion zwykle pyta mnie o moją "nazwę Użytkownika Subversion", jeśli nie użyje mojej zalogowanej nazwy użytkownika. Tak więc, kiedy jestem leniwy (zazwyczaj) po prostu niech poprosi mnie o moje hasło i nacisnę enter, i czekać na monit o nazwę użytkownika i użyć mojej nazwy użytkownika Subversion.

W Przeciwnym Razie rozwiązanie Michaela jest dobrym sposobem na podanie nazwy użytkownika.

 11
Author: Beau Simensen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-01 23:44:26

Większość odpowiedzi wydaje się być dla svn + ssh, lub nie wydają się działać dla nas.

Dla dostępu http, najprostszym sposobem wylogowania użytkownika SVN z linii poleceń jest:

rm ~/.subversion/auth/svn.simple/*

Końcówka kapelusza: http://www.yolinux.com/TUTORIALS/Subversion.html

 7
Author: Danny Schoemann,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-11 06:57:20

Uważam, że jeśli używasz metody file://, aby uzyskać dostęp do repozytorium subversion, twoje zmiany są zawsze wykonywane przez użytkownika, który uzyskuje dostęp do repozytorium. Musisz użyć metody obsługującej uwierzytelnianie, takiej jak http: / / lub svn://.

Zobacz http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.serverconfig.choosing

 6
Author: Kamil Kisiel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-01 23:47:25

Używanie Subversion z modułem Apache lub svnserve. Byłem w stanie wykonywać operacje jako wielu użytkowników za pomocą --username.

Za każdym razem, gdy wywołujesz polecenie Subversion jako "nowy" użytkownik, Twój katalog $HOME/.subversion/auth/<authentication-method>/ będzie miał buforowany nowy wpis dla tego użytkownika (zakładając, że możesz uwierzytelnić się za pomocą poprawnego hasła lub metody uwierzytelniania dla serwera, z którym się kontaktujesz jako ten konkretny użytkownik).

 6
Author: Don Wakefield,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-15 14:03:12

Jeśli używasz svn + ssh do łączenia się z repozytorium, to jedyną rzeczą, która Cię uwierzytelnia i autoryzuje, są Twoje poświadczenia ssh. Wszystko inne jest ignorowane. Twoja nazwa użytkownika zostanie zalogowana w subversion dokładnie tak, jak została ustanowiona w Twoim połączeniu ssh. Doskonałe wyjaśnienie tego jest w jimmyg.org/blog/2007/subversion-over-svnssh-on-debian.html

 2
Author: codeMonster,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-15 13:51:18

Przejdź do ~/.subversion/auth/svn.simple/*, a zobaczysz listę plików zawierających informacje o Twoim koncie użytkownika svn. Po prostu usuń wszystkie inne, których nie potrzebujesz.

Po tym, gdy robisz cokolwiek, co dotyczy operacji SVN, takich jak commit, rm, itp,. Zostaniesz poproszony o podanie nazwy użytkownika lub hasła.

 2
Author: Alan Dong,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-31 20:47:18

TortoiseSVN zawsze pyta o nazwę użytkownika.

 0
Author: recursive,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-02 00:26:04

Wierzę, że możesz ustawić zmienną środowiskową SVN_USER, aby zmienić nazwę użytkownika SVN.

 -3
Author: Sophie Alpert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-02 00:59:12