Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Subversion] svn commit, Zatwierdzenie usunięcia katalogu z projektu
starach
post 22.01.2009, 15:00:44
Post #1





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Witam. Postanowiłem przerzucić się ze zwykłego kopiowania katalogu projektu i wpisywania mu daty jako prefiksu na Subversion. Usunięcie katalogu z drzewa projektu powoduje zaparcie się rękami i nogami SVN przed zatwierdzeniem zmian. Jak wymusić na nim ich potwierdzenie mimo usuniętego katalogu?

Cytat
D:\Projekty\www\app1>svn commit -m "Wywalenie niepotrzebnego katalogu."
svn: Zatwierdzenie nie powiodło się (szczegóły poniżej):
svn: Brak katalogu 'D:\Projekty\www\app1\test1'
svn: Brak katalogu 'D:\Projekty\www\app1\test1'


Cytat
D:\Projekty\www\app1>svn help commit
commit (ci): Zatwierdź zmiany dokonane na kopii roboczej poprzez zapisanie ich w
repozytorium.
Użycie: commit [ŚCIEŻKA...]

Zatwierdzenie wymaga podania opisu zmian (może być pusty). Jeśli
nie podano go za pośrednictwem opcji --message lub --file, zostanie
uruchomiony edytor tekstu. Jeśli którykolwiek z podanych argumentów
polecenia zawiera zablokowane obiekty, to po udanej operacji
zatwierdzania blokady na tych obiektach będą zdjęte.

Poprawne opcje:
-q [--quiet] : wypisz nic lub tylko podsumowanie
-N [--non-recursive] : przestarzałe; spróbuj --depth=files lub --depth=immediates
--depth ARG : ogranicz operację przez głębokość ARG ('empty', 'files',
'immediates' lub 'infinity')
--targets ARG : potraktuj zawartość pliku ARG jako dodatkowe argumenty
--no-unlock : nie usuwaj blokad dla obiektów
-m [--message] ARG : podaj argument określający opis zmian
-F [--file] ARG : czytaj opis zmian z pliku ARG
--force-log : wymuś uznanie opisu zmian za poprawny
--editor-cmd ARG : użyj ARG jako polecenia uruchamiającego edytor tekstu
--encoding ARG : zakładaj, iż parametry są podane w kodowaniu ARG
--with-revprop ARG : określ atrybut ARG wersji w nowej wersji
przy użyciu formatu nazwa[=wartość]
--changelist ARG : działaj tylko na członkach listy zmian ARG
[aliasy: --cl]
--keep-changelists : nie usuwaj list zmian po zatwierdzeniu zmian

Globalne opcje:
--username ARG : użyj ARG jako nazwy użytkownika
--password ARG : użyj ARG jako hasła
--no-auth-cache : nie zapamiętuj danych uwierzytelniających
--non-interactive : nie zadawaj żadnych interaktywnych pytań
--config-dir ARG : pobierz konfigurację użytkownika z katalogu ARG
Go to the top of the page
+Quote Post
c3zi
post 22.01.2009, 15:30:46
Post #2





Grupa: Zarejestrowani
Postów: 266
Pomógł: 20
Dołączył: 15.11.2006
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


Najpierw zrób: svn delete katalog
Potem commita.
Następnie usuń ręcznie ten katalog i już nie będzie go w repozytorium.


--------------------
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Go to the top of the page
+Quote Post
starach
post 23.01.2009, 02:48:09
Post #3





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Dzięki. Fajnie by było jakbyś mi jeszcze powiedział jak pobrać z serwera SVN poprzednią wersję pliku, ale zapisać ją pod inną nazwą. Tak żeby zmodyfikowany plik na stacji roboczej nie został nadpisany przez starszy plik.

Powiedzmy że usunąłem z klasy metodę i chcę ją przerobić na oddzielną klasę. Kiedy już struktura jest zrobiona chcę sobie przypomnieć implementacje skasowanej metody. Dlatego właśnie przydałaby się możliwość ściągnięcia pliku z repozytorium, ale pod inną nazwą niż oryginalna. No chyba że istnieje jakieś inne rozwiązanie.
Go to the top of the page
+Quote Post
Cezar708
post 23.01.2009, 12:40:02
Post #4





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat
Dzięki. Fajnie by było jakbyś mi jeszcze powiedział jak pobrać z serwera SVN poprzednią wersję pliku, ale zapisać ją pod inną nazwą. Tak żeby zmodyfikowany plik na stacji roboczej nie został nadpisany przez starszy plik.


zawsze możesz aktualny plik zapisać pod inną nazwą i zrobić svn up -rXXX gdzie XXX to numer revizji, który CIę interesuje na przykład:
Kod
$ mv plik.php  plik.back.php
$ svn up -r 123 plik.php


pozdrawiam
Go to the top of the page
+Quote Post
dr_bonzo
post 23.01.2009, 14:08:26
Post #5





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


To powyzsze nadpisze ci plik - jesli chcesz pod inna nazwa to:
Kod
svn cat -r 123 plik.php > plik-stary.php

w plik-stary.php dostaniesz stara wersje pliku plik.php


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
starach
post 23.01.2009, 19:49:18
Post #6





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Dziękuje doktorku. smile.gif

Nie spodziewałem się że jest zaimplementowany cat w SVN'ie. Chyba sobie przeczytam opisy tych wszystkich poleceń.
Go to the top of the page
+Quote Post
scanner
post 24.01.2009, 03:06:33
Post #7





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Jako, ze widże, iż pracujesz na windowsie, polecam TortoiseSVN - korzystam z niego na co dzień...


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
starach
post 24.01.2009, 04:26:27
Post #8





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Ten program był pierwszą rzeczą dotyczącą SVN'u z którą się zetknąłem. Nie wiedziałem nawet wtedy co to jest SVN, tylko że trzeba ściągnąć projekt, a TortoiseSVN jest do tego zalecany. tongue.gif Pewnie z niego właśnie będę korzystał, ale najpierw chcę poznać narzędzia wiersza poleceń.

edit>
Mam jeszcze dwa pytania.
1. Co zrobić w przypadku poważnych zmian w strukturze katalogu kopi roboczej. Czy muszę zaktualizować kopię roboczą do wersji z repozytorium i wprowadzić zmiany od nowa?
2. Jak skasować repozytorium i pozbawić kopię roboczą katalogów .svn w których subversion składuje informacje.

Ten post edytował orglee 24.01.2009, 08:35:59
Go to the top of the page
+Quote Post
dr_bonzo
post 24.01.2009, 09:00:50
Post #9





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Cytat
1. Co zrobić w przypadku poważnych zmian w strukturze katalogu kopi roboczej. Czy muszę zaktualizować kopię roboczą do wersji z repozytorium i wprowadzić zmiany od nowa?

HYm, nie bardzo rozumiem o czym mowisz - powazne zmiany to normalne zmiany. Zawsze chcesz zaktualizowac KR (kop. rob.) do najnowszej wersji a potem zimeniac wszystko i commitowac.


Cytat
2. Jak skasować repozytorium i pozbawić kopię roboczą katalogów .svn w których subversion składuje informacje.

Czyli chcesz sam katalog projektu bez .svn/-ow? i do tego pozbyc sie repozytorium?

Najprosciej je wyeksportowac (svn export ... - dostaniesz sam projekt bez .svn/-ów ) a potem skasowac repozytorium.
Druga wersja to skasowac wszystkie katalogi .svn/ wewnatrz kopii roboczej (szukaj + usun) a potem skasowac repozytorium.
O to ci chodzilo?


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
starach
post 24.01.2009, 09:46:23
Post #10





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


2. Tak o to chodziło dzięki.

1. Dodałem kilka katalogów, kilka skasowałem, kilku innym nazwy zmieniłem co łączyło się też z modyfikacją nazw klas, a teraz SVN pluje mi się że to zrobiłem i nie chce zatwierdzić zmian. Pomyślałem że w sumie można skasować istniejące repozytorium, ale skoro svn export wyciąga strukturę projektu z repozytorium to pozostaje ręczne wywalenie katalogów .svn z kopii roboczej. Nie jestem jeszcze przyzwyczajony do wprowadzania zmian w drzewie katalogów najpierw w repozytorium i następnie dopiero aktualizowania kopii roboczej i stąd ten błąd.
Go to the top of the page
+Quote Post
dr_bonzo
post 24.01.2009, 12:41:22
Post #11





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


1.
Zmiany nazw katalogow wykonuj "svn move" a nie zwykla opcja zmiany nazwy w windzie (z tego co pamietam Tortoise SVN tak robi - i hmmm nie wiem czy ma taka opcje, moze gdzies glebiej w menu "rename").
Kasuj katalogi tez poprawnie "svn remove" .

Przy commicie czasami sie pluje ze masz nieaktualne KR - dajesz svn up i commit przechodzi.

No chyba ze cos wiecej "popsules".


Cytat
Nie jestem jeszcze przyzwyczajony do wprowadzania zmian w drzewie katalogów najpierw w repozytorium i następnie dopiero aktualizowania kopii roboczej i stąd ten błąd.

HMmm, ze operujesz bezposrednio na repozytorium? Generalnie nie potrzebujesz tego.
Operacje robisz na KR i commitujesz, that's all.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
starach
post 27.01.2009, 08:36:39
Post #12





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Znowu się popisałem...
Podmieniając wygenerowany model ORM wywaliłem poprzednie katalogi w efekcie czego nie mam w nich ukrytych folderów .svn z informacjami o wersjonowaniu. Jaką komendę nie chciałbym wykonać zawsze mi krzyczy żebym wykonał cleanup bo folder Model jest zablokowany. Natomiast wykonanie cleanup skutkuje błędem: "Cleanup failed to process the following paths: ( ... ) is not a working copy directory." Co mam teraz zrobić? :/
Go to the top of the page
+Quote Post
Zyx
post 27.01.2009, 10:05:37
Post #13





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

Ostrzeżenie: (0%)
-----


Ściągnij jeszcze raz nową kopię roboczą z repozytorium i skopiuj do niej te pliki, które pozmieniałeś (z wyjątkiem katalogów .svn).


--------------------
Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0
Go to the top of the page
+Quote Post
starach
post 27.01.2009, 11:14:35
Post #14





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Ok tylko jak ja mam to zrobić skoro cały katalog z usuniętymi ręcznie podkatalogami jest zablokowany? :/
Go to the top of the page
+Quote Post
tiraeth
post 27.01.2009, 11:17:38
Post #15





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Jak usunąłeś lokalnie, to możesz wszystko wywalić i zrobić nowy checkout. Pobierzesz sobie wersję z przed zmian w ORM i potem dodasz to, co potrzebujesz.
Go to the top of the page
+Quote Post
dr_bonzo
post 27.01.2009, 11:17:40
Post #16





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Niekoniecznie - (jesli nie masz w tych podkatalogach zadnych wlasnych zmian..) - usun caly katalog (nie! svn rm'em - tak najzwyczajniej usun) z "generated models" (czy jak mu tam) - i daj svn up - odtworzy ci te katalogi, a teraz je usun prawidlowo svn rm...


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
starach
post 27.01.2009, 12:16:47
Post #17





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Cytat
D:\Projekty\www\p1\module\Articles\Model>svn up Merger
svn: Kopia robocza '.' jest zablokowana
svn: uruchom 'svn cleanup', by usunąć blokady (więcej informacji - zobacz 'svn help cleanup')

D:\Projekty\www\p1\module\Articles\Model>svn cleanup
svn: 'Merger' nie jest katalogiem kopii roboczej
sadsmiley02.gif
Go to the top of the page
+Quote Post
dr_bonzo
post 27.01.2009, 13:16:47
Post #18





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Jakbym mial dostep do twojego kompa... to moglbym cos poradzic - bo takto to niewiele wiem co jest co - co namieszales itp.

A jakbys skasowal "windowsem" caly katalog Model, a potem wewnatrz module/Articles dal "svn up" ?

Wiec najlepiej czekautnac od nowa i przeniesc zmienione pliki na nowa KR.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Cysiaczek
post 27.01.2009, 14:29:51
Post #19





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Daj jeszcze svn unlock. Tylko spróbuj na różnych ścieżkach, bo czasami może twierdzić, że coś nie jest repozytorium i trzeba bardziej precyzyjnie określić. Mi to polecenie pomaga, gdy coś wywalę przez pomyłkę.

Pozdrawiam


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.06.2025 - 15:00