Bagaimana anda membuat sebuah remote Git branch?
Saya membuat sebuah cabang lokal yang ingin saya 'push' hulu. Ada pertanyaan serupa di sini di Stack Overflow pada bagaimana untuk melacak yang baru dibuat cabang terpencil.
Namun, alur kerja saya adalah sedikit berbeda. Pertama saya ingin membuat sebuah cabang lokal, dan aku hanya akan mendorong hulu ketika saya'm puas dan ingin berbagi cabang saya.
- Bagaimana saya melakukan itu? (saya penelusuran google tampaknya tidak datang dengan apa-apa).
- Bagaimana saya memberitahu rekan-rekan saya untuk menariknya dari hulu repository?
UPDATE Dengan Git 2.0 ada jawaban sederhana aku telah tertulis di bawah ini: https://stackoverflow.com/a/27185855/109305
3021
19
Pertama, anda membuat cabang lokal:
Remote branch dibuat secara otomatis ketika anda push ke remote server. Jadi, ketika anda merasa siap untuk itu, anda hanya dapat melakukan:
Di mana
<remote-nama>
biasanyaasal
, nama yang git memberikan ke remote anda kloning dari. Rekan anda akan kemudian hanya menarik yang cabang, dan's otomatis dibuat secara lokal.Namun perlu dicatat bahwa secara formal, format:
Tapi ketika anda mengabaikan salah satu, ia menganggap kedua cabang nama yang sama. Setelah mengatakan ini, seperti kata-kata perhatian, jangan membuat kesalahan kritis yang menentukan hanya
:<remote-cabang-nama>
(dengan usus besar), atau remote cabang akan dihapus!Jadi yang berikutnya
git pull
akan tahu apa yang harus dilakukan, anda mungkin ingin menggunakan:Seperti yang dijelaskan di bawah ini,
--set-hulu
pilihan set up hulu cabang:Pertama, anda harus membuat cabang lokal
Setelah itu, anda dapat bekerja secara lokal di cabang anda, ketika anda siap untuk berbagi cabang, mendorong itu. Perintah selanjutnya mendorong cabang ke remote repository asal dan trek itu
Rekan-rekan dapat menghubungi cabang anda, dengan melakukan:
Anda dapat terus bekerja di cabang dan mendorong kapanpun anda inginkan tanpa argumen untuk git push (argumentless git push akan mendorong guru untuk remote master, your_branch lokal ke remote your_branch, dll...)
Rekan-rekan dapat mendorong ke cabang anda dengan melakukan melakukan dan kemudian mendorong secara eksplisit
Atau pelacakan cabang untuk menghindari argumen untuk git push
Sederhana Git 2.0+ solusi:
Sebagai Git 2.0 perilaku telah menjadi lebih sederhana:
Anda dapat mengkonfigurasi git dengan
push.default = arus
untuk membuat hidup lebih mudah:Saya menambahkan ini jadi sekarang saya hanya bisa mendorong cabang baru hulu dengan
-u
akan melacak branch jauh dari nama yang sama. Sekarang dengan konfigurasi ini anda akan auto-kira remote referensi untuk git push. Dari git.config dokumentasi:Bagi saya, ini adalah sebuah penyederhanaan dari saya sehari-hari Git alur kerja. Konfigurasi pengaturan mengurus 'biasa' use case di mana anda menambahkan sebuah cabang lokal dan ingin membuat jarak jauh. Juga, saya dapat dengan mudah membuat cabang-cabang lokal dari remote dengan hanya melakukan
git co remote_branch_name
(sebagai lawan untuk menggunakan--set-hulu-untuk
bendera).Saya tahu ini pertanyaan dan menerima jawaban yang agak tua, tapi perilaku telah berubah sehingga sekarang pilihan konfigurasi yang ada untuk membuat alur kerja anda lebih sederhana.
Untuk menambah global Git konfigurasi, jalankan pada command line:
Seperti yang tercantum dalam jawaban sebelumnya,
ini cukup untuk mendorong cabang lokal.
Rekan anda, dapat menarik semua remote cabang (termasuk yang baru) dengan perintah ini:
Kemudian, untuk membuat perubahan pada cabang, aliran biasa:
Buat cabang baru berbasis lokal pada saat ini cabang:
Melakukan perubahan apapun seperti biasanya. Kemudian, dorong hulu:
Ini adalah cara pintas untuk mendorong arus cabang ke cabang dengan nama yang sama pada
asal
dan melacak sehingga anda don't perlu menentukanasal KEPALA
di masa depan.Jika anda ingin membuat cabang dari cabang saat ini
anda ingin sebuah cabang dari cabang terpencil, anda dapat mencoba
Jika anda selesai dengan perubahan anda dapat menambahkan file.
Maka jangan melakukan secara lokal
Bila anda ingin push ke remote repo
Semua bersama-sama akan
atau Jika anda ingin membuat cabang dari cabang terpencil mengatakan pengembangan
git checkout -b bug_fixes asal/pengembangan
Anda dapat mendorong ke cabang untuk remote repo oleh
Kapan saja anda ingin memperbarui cabang dari cabang lain mengatakan master.
git pull asal master
.Jika anda ingin benar-benar hanya membuat remote branch tanpa memiliki satu lokal, anda dapat melakukannya seperti ini:
Hal itu mendorong apapun yang anda KEPALA ke cabang foo yang tidak ada pada remote.
Solusi termudah... Drumm Roll... git versi 2.10.1 (Apple Git-78)
N. B. - cabang yang baru saja anda buat dalam lingkungan lokal anda, dan remote tidak ada cabang di mana anda mencoba untuk mendorong, harus memiliki nama yang sama.
Pertama anda membuat cabang lokal:
Dan kemudian untuk membuat cabang dari jarak jauh:
Catatan: Ini tidak bekerja pada versi latests dari git:
Cheers!
Mendorong cabang di github :
Ketika anda ingin melakukan sesuatu di cabang anda, pastikan untuk berada di cabang anda.
Anda dapat melihat semua cabang yang dibuat dengan menggunakan :
Yang akan menampilkan :
Tambahkan remote baru untuk cabang anda :
Mendorong perubahan dari anda melakukan ke cabang anda :
Update cabang anda ketika original cabang dari repositori resmi telah diperbarui :
Kemudian anda harus mendaftar untuk menggabungkan perubahan, jika anda branch adalah turunan dari mengembangkan yang perlu anda lakukan :
Menghapus sebuah cabang lokal anda filesystem :
Untuk memaksa penghapusan cabang lokal anda filesystem :
Menghapus cabang di github :
Di Sini Semua Informasi
Lain yang sudah Ada proyek
Menciptakan sebuah cabang lokal dari yang sudah ada cabang (dapat master/ mengembangkan/ setiap-lain-lain-cabang).
Mendorong ini untuk remote
Di sini,
Jika kita menghapus lokal dan remote branch nama-nama, itu akan memiliki format
Hal ini akan mendorong cabang lokal ke remote dan dengan nama yang sama seperti cabang lokal branch_name. Cabang lokal akan melacak cabang terpencil juga.
Aku tahu pertanyaan ini dijawab dengan baik, tapi hanya ingin daftar langkah-langkah yang saya ambil untuk membuat cabang baru "myNewBranch" dan push ke remote ("asal" dalam kasus saya) dan menyiapkan pelacakan. Pertimbangkan ini "TL;DR" versi :)
Sekarang dengan git, anda hanya bisa mengetik, ketika anda berada di cabang yang benar
git push --set-hulu asal <remote-branch-name
>dan git buat untuk anda asal-cabang.
Anda dapat melakukannya dalam 2 steeps:
1. Gunakan
checkout
untuk membuat cabang lokal:2. Gunakan
push
perintah untuk autocreate cabang dan mengirim kode ke remote repository:Hanya ingin menambahkan bahwa sementara:
Menciptakan cabang baru, hal ini juga memeriksa bahwa cabang / membuat anda saat ini cabang. Jika, untuk beberapa alasan, semua yang anda ingin lakukan adalah snap off cabang tetapi tidak membuat anda saat ini cabang, maka anda akan menggunakan perintah berikut:
Dalam perintah pertama, "checkout" membuat kata branch anda saat ini cabang, dan " b" artinya: cabang ini doesn't ada lagi, sehingga membuatnya bagi saya.
Cara melakukan melalui Sumber Pohon
git push-u <remote-nama> <cabang-nama>
doesn't bekerja jika baru dibuat cabang isn't melahirkan dari repo, yaitu jika anda ingin't menciptakan cabang baru menggunakan git checkout -b new_branch`, maka ini tidak akan bekerja.Misalnya, saya punya kloning dua repositori lokal dan aku harus copy repo2/branch1 untuk repo1/ dan kemudian mendorong itu juga.
Ini link membantu saya mendorong saya cabang lokal (kloning dari yang lain repo) untuk remote repo:
Berikut adalah bagaimana anda melakukannya di eclipse melalui Egit.
Pergi "Repositori Git Menjelajahi" melihat dan expland git proyek yang anda ingin membuat cabang. Di bawah Cabang -> Lokal .. pilih cabang yang anda inginkan untuk membuat cabang ( Dalam kasus saya, saya memilih master .. anda bisa pilih lain lain cabang jika anda ingin) .. kemudian klik kanan dan klik Buat Cabang pilihan .. dan pilih checkout proyek ini pilihan, dan kemudian klik tombol finish.
Sekarang dari project explorer pilih proyek .. klik kanan kemudian Tim -> Mendorong Cabang.
Remote baru cabang yang akan dibuat. Anda dapat memberikan nama cabang ke rekan anda sehingga mereka bisa melakukannya.
Saya menggunakan ini dan itu cukup berguna:
Anda don't bahkan perlu git status; mungkin, aku hanya ingin memastikan semuanya berjalan dengan baik...
Anda dapat memiliki BAIK LOKAL dan REMOTE cabang dengan satu perintah.