Saya bertanya-tanya bagaimana cara menarik repo dengan semua komitmen yang belum pernah dilakukan, jika itu mungkin ..
apakah itu seperti:
$ git clone x
$ cd x
$ git fetch origin -f
? atau sesuatu yang lain?
Saya bertanya-tanya bagaimana cara menarik repo dengan semua komitmen yang belum pernah dilakukan, jika itu mungkin ..
apakah itu seperti:
$ git clone x
$ cd x
$ git fetch origin -f
? atau sesuatu yang lain?
Jawaban:
Tidak ada perintah yang saya tahu yang mengatakan "jatuhkan semua objek komit dalam repositori jarak jauh, bahkan yang tidak direferensikan".
Anda hanya dapat membawa komit dengan referensi di repositori jarak jauh. Anda dapat melakukan ini dengan perintah:
git fetch [remote] [remoteBranch]:[localBranch]
Repositori jarak jauh perlu membuat referensi ke setiap komit yang menggantung sebelum Anda dapat mengambilnya. Jika Anda memiliki akses ke repositori jarak jauh, Anda dapat melakukan ini dengan perintah seperti:
git fsck --lost-found
Output akan menunjukkan Anda setiap komitmen yang menggantung. Berikan mereka referensi git branch [branchname] [commit sha1]
, maka Anda dapat mengambilnya.