Saya memiliki direktori tidak kosong (mis. / Etc / something) dengan file yang tidak dapat diubah namanya, dipindahkan, atau dihapus.
Saya ingin memeriksa direktori ini menjadi git di tempatnya.
Saya ingin dapat mendorong status repositori ini ke repositori jarak jauh (di komputer lain) menggunakan "git push" atau yang serupa.
Ini sepele menggunakan Subversion (saat ini kami melakukannya menggunakan Subversion) menggunakan:
svn mkdir <url> -m <msg>
cd <localdir>
svn co <url> .
svn add <files etc>
svn commit -m <msg>
Apa itu setara dengan git?
Bisakah saya "git klon" ke direktori kosong dan cukup pindahkan direktori .git dan semuanya berfungsi?
git init
di dalam direktori lokal?Jawaban:
Mengingat Anda telah menyiapkan daemon git
<url>
dan repositori kosong:sumber
git config branch.master.remote origin
dangit config branch.master.merge refs/heads/master
apa yang akan saya hasilkan akan persis sama seperti jika saya mengkloning repositori jarak jauh? yaitugit pull
dan hanyagit push
akan bekerja ?AppName
di GitHub. Bagi saya tidak jelas apa persisnya<url>
sarana itu. Jadi bagi mereka yang memiliki pertanyaan yang sama, kami menggunakan GitHub.com, kami tidak menjalankan repo kami, dan kemudian<url>
seperti yang digunakan pada baris ke-5 terlihat seperti ini:https://github.com/CompanyName/AppName
git pull origin master --allow-unrelated-histories
lakukan penggabungan.Inilah yang saya lakukan. Saya telah menambahkan penjelasan untuk memahami apa yang sedang terjadi.
Inisialisasi Repositori Lokal
pertama inisialisasi Git dengan
Tambahkan semua File untuk kontrol versi dengan
Buat komit dengan pesan pilihan Anda
Inisialisasi Repositori Jarak Jauh
Buat proyek di GitHub dan salin URL proyek Anda. seperti yang ditunjukkan di bawah ini:
Tautkan repo jarak jauh dengan repo lokal
Sekarang gunakan URL yang disalin untuk menautkan repo lokal Anda dengan repo GitHub jarak jauh. Ketika Anda mengkloning repositori dengan git clone, secara otomatis membuat koneksi jarak jauh yang disebut asal menunjuk kembali ke repositori yang dikloning. Remote perintah digunakan untuk mengatur kumpulan repositori terlacak.
Sinkronkan
Sekarang kita perlu menggabungkan kode lokal dengan kode jarak jauh. Langkah ini sangat penting jika tidak kita tidak akan bisa mendorong kode di GitHub. Anda harus memanggil 'git pull' sebelum mendorong kode Anda.
Komit kode Anda
Akhirnya dorong semua perubahan pada GitHub
sumber
Inilah solusi saya:
sumber
.gitignore
&README.dm
Dalam hal repositori jarak jauh tidak kosong (ini adalah kasus jika Anda menggunakan IBM DevOps di hub.jazz.net) maka Anda perlu menggunakan urutan berikut:
EDIT 30 Januari 17: Silakan lihat komentar di bawah, pastikan Anda berada di repo yang benar!
sumber
Kapan repositori github tidak kosong, seperti .gitignore dan lisensi
Gunakan pull --allow-unrelated-histories dan dorong --force-with-leasing
Gunakan perintah
sumber
git push -u origin master --force-with-lease
Cara paling sederhana untuk melakukan ini yang menurut saya berguna adalah di bawah ini.
Ini mungkin bukan cara resmi tetapi berfungsi dengan baik.
Misalkan Anda memiliki proyek bernama "
XYZ
" di PC Anda. Sekarang Anda ingin membuat repo git dari proyek ini di github dan menggunakan fungsinya.Langkah 1 : pergi ke "
www.github.com
"Langkah 2 : buat repositori dengan
README.md
file " " (beri nama sesuka Anda)Langkah 3 : tirukan repositori ke PC Anda.
Langkah 4 : Di folder yang dikloning Anda akan mendapatkan dua hal: "
.git
" folder danREADME.md
file " ". Salin keduanya di folder proyek Anda "XYZ
".Langkah 5 : Hapus repo yang dikloning.
Langkah 6 : tambahkan, komit, dan dorong semua file dan folder proyek Anda.
Sekarang, Anda bisa menggunakan "
XYZ
" proyek Anda sebagai repositori git.sumber
Saya punya masalah serupa. Saya membuat repositori baru, BUKAN DI DIREKTORI YANG SAYA INGIN MEMBUAT REPOSITORI . Saya kemudian menyalin file yang dibuat ke direktori saya ingin membuat repositori. Kemudian buka repositori yang sudah ada menggunakan direktori yang baru saja saya salin file.
CATATAN: Saya memang menggunakan desktop github untuk membuat dan membuka repositori yang sudah ada.
sumber
Inilah solusi saya jika Anda membuat repositori dengan beberapa default
readme file
ataulicense
sumber