2012-11-03 9 views
10

Załóżmy, że mam lokalną kopię mojej aplikacji i popycham ją do github, a następnie używam git-ftp, aby przesłać wszelkie zmiany na mój serwer.Unikaj przesyłania git-ftp, jeśli pliki już znajdują się na serwerze

Chciałbym najpierw użyć:

$ git ftp init -u <user> -p - ftp://host.example.com/public_html 

które przesłać wszystkie moje pliki na serwer i używać git push dla przyszłych filmach, prawda?

Ale co, jeśli mam już kopię na moim serwerze i chcę ją zainstalować lokalnie? Próbowałem pobieranie moich plików aplikacji, używane git init, pchnął wszystko github i wtedy kiedy próbowałem za pomocą git ftp push Dostałem ten błąd:

fatal: Could not get last commit. Network down? Wrong URL? Use 'git ftp init' for the inital push., exiting... 

Następnie użyłem komendy git ftp init i to działało, ale to re-upload wszystko.

Czy istnieje sposób, aby ustawić to bez konieczności ponownego przesyłania wszystkiego i po prostu rozpocząć korzystanie z git ftp push?

Odpowiedz

16

Od strony man dla git-ftp:

catchup 
    Uploads current SHA1 to log, does not upload any files. 

    This is useful if you used another FTP client to upload the 
    files and now want to remember the SHA1. 

Tak więc, jeśli jesteś pozytywny repozytorium git jest zsynchronizowany z serwerem FTP, uruchom git ftp catchup zamiast git ftp init po raz pierwszy i będzie to wgrać bieżące zatwierdzenie skrótu do serwera, ale nie zmienia żadnych plików. Następnie należy użyć git ftp push, aby zsynchronizować przyszłe zatwierdzenia z nim.

Powiązane problemy