Saya mencoba mengikuti tutorial Michael Hartl Rails tapi saya mengalami kesalahan.
Saya mendaftar di Github dan mengeluarkan kunci SSH baru dan membuat repositori baru. Tetapi ketika saya memasukkan baris berikutnya ke terminal saya mendapatkan kesalahan berikut:
Parkers-MacBook-Pro:.ssh ppreyer$ git remote add origin [email protected]:ppreyer/first_app.git
fatal: remote origin already exists.
Hanya ingin tahu apakah ada orang lain yang mengalami masalah ini?
github
terminal
github-for-mac
preyer
sumber
sumber
.git/config
file untuk melihat apakah asal belum dideklarasikan.Jawaban:
TL; DR Anda hanya perlu memperbarui remote yang ada:
Versi panjang:
Seperti yang ditunjukkan pesan kesalahan, sudah ada remote yang dikonfigurasi dengan nama yang sama. Jadi Anda bisa menambahkan remote baru dengan nama yang berbeda atau memperbarui yang ada jika Anda tidak membutuhkannya:
Untuk menambahkan remote baru, dipanggil sebagai contoh
github
alih-alihorigin
(yang jelas sudah ada di sistem Anda), lakukan hal berikut:Ingat juga, di mana pun dalam tutorial Anda melihat "asal" Anda harus menggantinya dengan "github" . Sebagai contoh
$ git push origin master
sekarang seharusnya$ git push github master
.Namun, jika Anda ingin melihat apa
origin
yang sudah ada, Anda dapat melakukan a$ git remote -v
. Jika Anda merasa ada kesalahan, Anda dapat memperbaruinya seperti ini:sumber
git remote -v
keluaran? Bisakah Anda mencobagit push origin master
?git remote rm origin
tidak cukup bekerja. Ini menghasilkan kesalahan: Tidak dapat menghapus bagian konfigurasi 'remote.origin'git remote set-url --add origin [email protected]/username/repo.git
Pendeknya,
Bekerja !
Bersulang!
sumber
Bagi Anda yang mengalami kesalahan "fatal: remote origin sudah ada.", Atau ketika mencoba untuk menghapus asal dan Anda mendapatkan "error: tidak dapat menghapus bagian config remote.origin", yang perlu Anda lakukan adalah atur asal secara manual.
POSH ~ Git Windows untuk Windows PowerShell (dan aplikasi GitHub untuk Windows) bermasalah dengan ini.
Saya mengalami ini, seperti saya sering melakukannya, lagi ketika mengatur gurita saya. Jadi, inilah cara saya membuatnya bekerja.
Pertama, periksa remote Anda:
Anda pertama-tama akan mencatat bahwa sumber saya tidak memiliki url. Setiap upaya untuk menghapusnya, mengganti namanya, dll semuanya gagal.
Jadi, ubah url secara manual:
Kemudian Anda dapat mengonfirmasi bahwa itu berfungsi dengan menjalankan
git remote -v
lagi:Ini telah memperbaiki lusinan repo git yang pernah saya alami, GitHub, BitBucket GitLab, dll.
sumber
Anda dapat melihat repositori jarak jauh yang Anda konfigurasikan untuk terhubung
Itu akan mengembalikan daftar dalam format ini:
Itu mungkin bisa membantu Anda mengetahui apa 'asal' aslinya menunjukkan.
Jika Anda ingin menjaga koneksi jarak jauh yang Anda lihat dengan -v, tetapi tetap ingin mengikuti tutorial Rails tanpa harus mengingat 'github' (atau nama lain) untuk repo tutorial Anda, Anda dapat mengganti nama repositori Anda yang lain dengan perintah:
seperti dalam:
Anda kemudian dapat melanjutkan tutorial Anda.
sumber
Pertama lakukan:
kemudian
dan voila! Bekerja untukku!
sumber
Dalam kasus khusus yang Anda buat repositori baru mulai dari repositori lama yang Anda gunakan sebagai templat (Jangan lakukan ini jika ini bukan kasus Anda). Hapus seluruh file git dari repositori lama sehingga Anda dapat memulai yang baru:
Dan kemudian restart repositori git baru seperti biasa:
sumber
Jika Anda perlu memeriksa repo jarak jauh mana yang telah terhubung dengan repo lokal Anda, ada cmd:
Sekarang jika Anda ingin menghapus repo jarak jauh (katakanlah, asal) maka yang dapat Anda lakukan adalah:
sumber
Pesan kesalahan itu menunjukkan bahwa Anda sudah memiliki remote di direktori git Anda. Jika Anda puas dengan remote itu, Anda bisa mendorong kode Anda. Jika tidak atau jika Anda tidak bisa mendorong hanya:
Voa!
sumber
Konsep
remote
hanyalah URL repositori jarak jauh Anda.Ini
origin
adalah alias yang menunjuk ke URL itu. Jadi alih-alih menulis seluruh URL setiap kali kami ingin mendorong sesuatu ke repositori kami, kami hanya menggunakan alias ini dan menjalankan:git push -u origin master
Beritahukan git ke
push
kode kita dari cabang master lokal kita ke remote repositori asal yang.Setiap kali kita mengkloning repositori , git membuat alias ini untuk kita secara default. Juga setiap kali kita membuat repositori baru , kita hanya membuatnya sendiri.
Apapun masalahnya, kita selalu dapat mengubah nama ini menjadi apa pun yang kita suka, menjalankan ini:
Karena disimpan di sisi klien dari aplikasi git (di mesin kami) mengubahnya tidak akan mempengaruhi apa pun dalam proses pengembangan kami, juga di repositori jarak jauh kami. Ingat, itu hanya nama yang menunjuk ke alamat .
Satu-satunya hal yang berubah di sini dengan mengganti nama alias, adalah bahwa kita harus mendeklarasikan nama baru ini setiap kali kita mendorong sesuatu ke repositori kita.
git push -u my-remote-alias master
Jelas satu nama tidak dapat menunjuk ke dua alamat yang berbeda. Itu sebabnya Anda mendapatkan pesan kesalahan ini. Sudah ada nama alias
origin
di mesin lokal Anda. Untuk melihat berapa banyak alias yang Anda miliki dan berapa jumlahnya, Anda dapat memulai perintah ini:Ini akan menunjukkan kepada Anda semua alias yang Anda miliki plus URL yang sesuai.
Anda juga dapat menghapusnya jika Anda suka menjalankan ini:
Jadi secara singkat:
Selamat coding.
sumber
jika Anda sudah menambahkan proyek untuk penyimpanan lain, seperti Anda mengunggah ke github dan kemudian Anda mengunggah ke bitbucket maka itu menunjukkan jenis Kesalahan ini.
Cara menghapus Kesalahan: hapus file git-hub di proyek Anda dan kemudian ulangi langkah-langkah berikut ...
sumber
Itu juga bisa terjadi jika Anda menjalankan perintah dalam direktori tanpa git diinisialisasi. Jika demikian, jalankan dahulu:
sumber
Anda harus menggunakan git
jika tidak maka gunakan sudo
untuk menambahkan asal:
git remote tambahkan asal http: // giturl
sumber
$ git remote add origin [email protected]:abc/backend/abc.git
Dalam perintah ini, asal bukan bagian dari perintah itu hanya nama repositori jarak jauh Anda. Anda dapat menggunakan nama apa pun yang Anda inginkan.
$ git remote -v
Ini akan memberi Anda hasil seperti ini
origin [email protected]:abc/backend/abc.git (fetch) origin [email protected]:abc/backend/abc.git (push) origin1 [email protected]:abc/backend/abc.git (fetch) origin1 [email protected]:abc/backend/abc.git (push)
jika itu berisi jalur repositori jarak jauh Anda maka Anda bisa langsung mendorongnya tanpa menambahkan asal lagi
Kemudian Anda dapat menambahkan asal baru dengan nama yang berbeda dan menggunakannya untuk mendorong suka
$ git remote add origin101 [email protected]:abc/backend/abc.git
Atau Anda dapat mengganti nama nama asal yang sudah ada, tambahkan asal Anda
git remote rename origin destination
jalankan perintah di bawah ini lagi
$ git remote -v
destination [email protected]:abc/backend/abc.git (fetch) destination [email protected]:abc/backend/abc.git (push)
Ini akan mengubah nama repo yang ada sehingga Anda dapat menggunakan nama asal itu
Atau Anda bisa menghapus asal Anda yang sudah ada dan menambahkan asal Anda
git remote rm destination
sumber
Coba ini
sumber
menghadapi kesalahan yang sama sambil menambahkan repositori ke git hun menggunakan git bash di windows
fatal: asal jauh sudah ada.
error: gagal mendorong beberapa referensi ke ' https://github.com/axaysushir/meditation_app_using_js.git '
sumber
perbarui asal jika sudah menggunakan perintah ini
sumber
Pertama periksa Untuk melihat berapa banyak alias yang Anda miliki dan apa saja, Anda dapat menjalankan perintah ini git remote -v
Kemudian lihat di repositori mana Anda berada kemudian coba git remote set-url - tambahkan [Lalu tautan repositori Anda] git push -u master asal
sumber
Setidaknya pada bash, kita dapat memaksa nilai kembali kode keluar dari perintah menjadi 0
Anda dapat menghapus remote lama dan menambahkannya lagi
sumber
Jika Anda ingin melakukan melalui GUI lakukan hal berikut:
sumber