Saya memiliki cabang master dan proyek baru . Dan sekarang saya ingin membuat repo baru dengan masternya berdasarkan cabang proyek baru.
Latar Belakang: Saya punya satu repositori yang berisi tiga aplikasi independen. Itu tidak dimulai dengan cara ini. Awalnya hanya ada satu aplikasi di repo. Namun seiring berjalannya waktu, kebutuhan bisnis telah berubah. Satu aplikasi menjadi dua (versi lawas dan penulisan ulang.) Layanan web ditambahkan. Cabang-cabang terpisah digunakan untuk memuat tiga proyek. Namun, mereka tidak membagikan kode apa pun. Dan jadi akan lebih mudah untuk memecah mereka menjadi repo mereka sendiri.
--follow-tags
untuk itu.push
ke repo lokal (mis.git init
Alih-alih Github> Baru> ...)Memperbarui:
cd ke repo lokal yang berisi old_branch dan:
sumber
Sunting: Di dalam GitHub, Anda dapat "garpu" repo, lalu pergi ke tab Admin di klon Anda. Di bawah "Nama repositori" dan "Visibilitas" adalah "Cabang Default" dengan menu tarik-turun cabang. Pilih
new-project
.Sunting ulang: Saya baru sadar itu
master
cabang yang ingin Anda atur, bukan hanya cabang "default". Begitu…them/repo
keyou/repo
.git clone [email protected]:you/repo.git
gitk
.old-master
cabang sehingga Anda tidak kehilangan jejak dari komitmen lama.]new-project
cabang, klik kanan pada pesan komit, dan pilih "Reset master branch to here". (Anda juga dapat melakukan ini di baris perintah menggunakangit-reset
, tapi saya belum menemukan doa yang benar.)Dorongan Anda berikutnya ke repo GitHub Anda harus dilakukan dengan
--force
opsi, tetapi jika tidak, Anda sudah selesai.Jika itu salah satu repo Anda sendiri, Anda melakukan ini untuk ...
git clone [email protected]:you/orig.git
git clone orig copy
copy
repo lokal , setel ulangmaster
cabang ke tempat yang Anda inginkan.you/copy
. Ikuti petunjuk di GitHub untuk mengatur proyek itu sebagai remote untuk versi lokal Andacopy
, dorongmaster
, dan Anda selesai!sumber
Dan itu saja. (Catatan: git history diawetkan)
Saya telah mencoba jawaban di atas dan menemukan itu tidak cukup spesifik karena tidak menentukan + master: master yang saya butuhkan untuk membuatnya berfungsi. Ini bekerja dengan baik.
Sumber (dengan modifikasi saya untuk menghindari masalah ssh dengan github): Mauricio Aiello, mantan Pengembang Senior Java, https://www.quora.com/How-do-I-create-a-new-GitHub-repository-from-a -branch-in-an-repositori yang ada
sumber
Tidak yakin apakah ini cara yang baik, tapi tetap mudah:
Kemudian buat repo baru di github, dan dorong.
sumber
Ingat bahwa ketika Anda hanya membuat repo baru, Anda kehilangan referensi ke yang lama, dan membuatnya lebih sulit untuk mempertahankan setiap pembaruan ke proyek asli yang disinkronkan dengan yang baru. Mungkin bukankah lebih baik untuk membayar repo?
sumber
Sedikit tambahan untuk jawaban yang benar:
$ git push [email protected]: accountname / new_repo + old_branch: master
"[email protected]: accountname / new_repo" => dapatkan dari github "Klon atau unduh" menu pull-down
sumber