Saya terkadang menggunakan checkout -b
opsi untuk membuat cabang baru, memeriksanya secara bersamaan dan mengatur pelacakan dalam satu perintah.
Di lingkungan baru, saya mendapatkan kesalahan ini:
$ git checkout -b test --track origin/master
fatal: Cannot update paths and switch to branch 'test' at the same time.
Did you intend to checkout 'origin/master' which can not be resolved as commit?
Mengapa Git tidak menyukainya? Ini digunakan untuk bekerja dengan repo yang sama.
git
git-checkout
indah
sumber
sumber
origin/master
itu bukan ID komit, yaitu, bukan cabang jarak jauh yang valid. Apakah itu muncul dalamgit branch -r
output?Jawaban:
Aneh: Anda perlu memeriksa remote Anda:
Dan pastikan
origin
diambil:Kemudian:
(untuk melihat apakah Anda telah mengambil
origin/master
cabang)Akhirnya, gunakan
git switch
alih-alih yang membingungkangit checkout
, dengan Git 2.23+ (Agustus 2019).sumber
pull
dan kemudian perintah ini berhasil..git
direktori saya rusak?git remote -v
dieksekusi dalam git repo tidak berfungsi.FWIW: Jika Anda memiliki kesalahan ketik pada branchname Anda, Anda akan mendapatkan kesalahan yang sama.
sumber
git checkout -b origin mybranch
alih-alihgit checkout -b mybranch
(tambahanorigin
)orgin/my-branch
bukanorigin/my-branch
. Melewatkan satui
& aku terus menggaruk kepalaku untuk sementara waktu untuk memahami mengapa seorang sekutu lama menolak untuk bergaul Typo memang masalahnya.Anda bisa mendapatkan kesalahan ini dalam konteks, misalnya membangun Travis yang, secara default, memeriksa kode
git clone --depth=50 --branch=master
. Sepengetahuan saya, Anda dapat mengontrol--depth
via.travis.yml
tetapi bukan--branch
. Karena itu menghasilkan hanya satu cabang yang dilacak oleh remote, Anda perlu memperbarui remote secara mandiri untuk melacak referensi remote yang diinginkan.Sebelum:
Cara mengatasinya:
Setelah:
sumber
Hal sederhana ini berhasil untuk saya!
Jika dikatakan tidak bisa melakukan 2 hal sekaligus, pisahkan.
sumber
Anda dapat mengikuti langkah-langkah ini ketika menemukan masalah ini:
yang menghasilkan ini:
Seperti yang Anda lihat, cabang baru diambil dari jarak jauh.
3. Terakhir, checkout cabang dengan perintah ini
Tidak perlu secara eksplisit memberitahu Git untuk melacak (menggunakan --track ) cabang dengan remote.
Perintah di atas akan mengatur cabang lokal untuk melacak cabang jarak jauh dari asal.
sumber
Jika Anda mendapat ruang putih di cabang Anda maka Anda akan mendapatkan kesalahan ini.
sumber
Bagi saya, saya perlu menambahkan remote:
maka saya bisa mengambil
sumber
Itu disebabkan oleh bahwa cabang lokal Anda tidak melacak cabang jarak jauh. Seperti kata ssasi, Anda perlu menggunakan perintah ini:
Saya memecahkan masalah saya sekarang ....
sumber
Pertama, Anda perlu
Fetch
remote (cabang tertentu), kemudian Anda dapat membuat br lokal dan melacaknya dengan cabang remote menggunakan perintah Anda (yaitucheckout
dengan -b dan --track).sumber
Anda harus pergi direktori submodule dan jalankan
git status
.Anda mungkin melihat banyak file dihapus. Anda bisa lari
git reset .
git checkout .
git fetch -p
git rm --cached submodules
// submoudles adalah nama Andagit submoudle add ....
sumber
Anda dapat menggunakan perintah ini: git remote update, git fetch, git checkout -b branch_nameSebuah asal: branch_nameB
Saya pikir mungkin itu karena cabang lokal Anda tidak dapat melacak cabang jarak jauh
sumber