Dengan Git / Github untuk Windows, jika saya memiliki repositori dengan direktori ini:, C:\dir1\dir2
apa yang harus saya lakukan untuk memindahkan file repo C:\dir1
? Saya jelas dapat menyalin dan menempelkan file secara fisik, tetapi apa yang harus saya lakukan di sisi Git?
Saya memiliki repo ini di GitHub dan saya menggunakan Git Bash dan GitHub untuk Windows.
git
github
github-for-windows
Mikael Engver
sumber
sumber
Jawaban:
Cukup salin seluruh isi direktori kerja (termasuk
.git
direktori tersembunyi ). Ini akan memindahkan seluruh direktori kerja ke direktori baru dan tidak akan memengaruhi repositori jarak jauh di GitHub.Jika Anda menggunakan GitHub untuk Windows, Anda dapat memindahkan repositori menggunakan metode seperti di atas. Namun, ketika Anda mengklik repositori di dalam aplikasi, ia tidak akan dapat menemukannya. Untuk menyelesaikan ini cukup klik pada lingkaran biru dengan !, pilih Find It dan kemudian browse ke direktori baru.
sumber
Saya tidak yakin dengan pertanyaan itu, jadi inilah dua jawaban:
Jika Anda ingin memindahkan repositori Anda:
Cukup salin seluruh repositori (dengan
.git
direktori).Tidak ada jalur absolut dalam
.git
struktur dan tidak ada yang mencegahnya untuk dipindahkan sehingga Anda tidak perlu melakukan apa pun setelah pindah. Semua tautan ke github (lihat di.git/config
) akan berfungsi seperti sebelumnya.Jika Anda ingin memindahkan file di dalam repositori:
Cukup pindahkan file. Kemudian tambahkan perubahan yang tercantum di
git status
. Selanjutnyacommit
akan melakukan yang diperlukan. Anda akan senang mengetahui bahwa tidak ada file yang akan diduplikasi: memindahkan file di git hampir tanpa biaya.sumber
.git
direktori.Jika Anda menggunakan
GitHub Desktop
, maka lakukan saja langkah-langkah berikut:GitHub Desktop
dan semua aplikasi lain dengan file terbuka ke jalur direktori Anda saat ini.GitHub Desktop
dan klik ikon biru (!) "Repositori tidak ditemukan". Kemudian dialog akan terbuka dan Anda akan melihat tombol "Temukan ..." yang akan membuka jendela sembulan yang memungkinkan Anda untuk mengarahkan jalurnya ke lokasi baru.sumber
Sementara pertanyaannya melibatkan Git untuk Windows, ini tampaknya menjadi hasil teratas bahkan ketika mencari Alat Studio Visual Untuk Git (ekstensi dalam VS 2012, dukungan asli di VS 2013).
Menggunakan solusi di atas sebagai panduan, saya menentukan bahwa Visual Studio Git Tools membuat repo bergerak (atau bahkan seluruh struktur direktori untuk semua repo) secara lokal sangat mudah.
1) Tutup Visual Studio. 2) Pindahkan folder Repo ke lokasi baru. 3) Buka Visual Studio. Buka Penjelajah Tim. Beralih ke tampilan "Sambungkan" (ikon colok di atas). 3a) Jika Repos masih menampilkan jalur lama, klik Refresh untuk memaksa pembaruan. 4) Repo yang dipindahkan secara lokal seharusnya tidak lagi ditampilkan di " Repositori Local Git ". 5) Klik Tambah (bukan yang baru atau klon) dan pilih folder repo untuk ditambahkan.
Pada langkah 5 Anda benar-benar hanya menyediakan jalur pencarian dan pencarian secara otomatis mencakup semua subfolder. Jika Anda memiliki beberapa repo yang dikelola di bawah satu root (repo independen hanya memiliki folder induk yang sama) maka memilih induk akan mencakup semua repo yang ditemukan di bawahnya.
Contoh: E: \ Repos \ RepoA E: \ Repos \ RepoB E: \ Repos \ RepoC
Dalam Visual Studio Team Explorer [Tambah]> "E: \ Repos \"> [Tambah] akan mengembalikan ketiganya ke Gudang Lokal.
sumber
Meskipun semua jawaban sebelumnya sepertinya mengatakan bahwa Anda hanya dapat memindahkan direktori dan tidak ada jalur absolut dalam struktur .git. Saya menemukan ini tidak benar ketika menggunakan git dari Cygwin.
Ketika saya memindahkan repo git saya (sebenarnya saya mengembalikannya dari cadangan, tetapi ke drive yang berbeda karena struktur drive saya berubah pada sistem baru saya). Saya mendapat pesan kesalahan seperti
Saya menggunakan grep untuk menemukan bahwa di file .git / config saya di bagian [core] adalah variabel worktree yang memegang path absolut dari repo git saya. Mengubah ini memperbaiki masalah bagi saya.
sumber
Saya menggunakan plugin Visual Studio git, dan saya memiliki beberapa situs web yang berjalan di IIS yang ingin saya pindahkan. Cara sederhana yang berhasil untuk saya:
Tutup Visual Studio.
Pindahkan kode (termasuk folder git, dll)
Klik pada file solusi dari lokasi baru
Ini menyegarkan pemetaan ke lokasi baru, menggunakan file git lokal yang sudah ada yang dipindahkan. Setelah saya kembali di Visual Studio, jendela Team Explorer saya menunjukkan repo di lokasi baru.
sumber
Saya menggunakan Github Desktop untuk Windows dan saya ingin memindahkan lokasi repositori. Tidak masalah jika Anda memindahkan direktori dan memilih lokasi baru dalam perangkat lunak. Tetapi jika Anda menetapkan direktori yang buruk, Anda mendapatkan kesalahan fatal dan tidak ada kesempatan kedua untuk melakukan relokasi ke direktori yang baik. Jadi untuk memperbaikinya. Anda harus menyalin file proyek di direktori yang buruk, membuatnya direkrut oleh Github Desktop, setelah itu, Anda dapat memindahkan lagi proyek Anda di folder lain dan membuat relokasi dalam perangkat lunak. Tidak perlu menutup Github Desktop untuk itu, itu akan memeriksa folder secara langsung.
Berharap ini akan membantu seseorang.
sumber
Ini tidak berhasil untuk saya. Saya memindahkan repo dari (misalnya) c: \ project1 \ ke c: \ repo \ project1 \ dan Git for windows tidak menunjukkan perubahan.
status git menunjukkan kesalahan karena salah satu submodul "bukan repositori git" dan menunjukkan path lama. mis. (nama diubah untuk melindungi IP)
fatal: Bukan repositori git: C: /project1/.git/modules/subproject/subproject2 fatal: 'git status --porcelain' gagal dalam subproyek submodule
Saya harus secara manual mengedit file .git dalam submodules untuk menunjuk ke jalur relatif yang benar ke repo submodule (dalam direktori .git / modules direktori repo utama)
sumber
Laporan dari masa depan: April 2018.
Saya ingin menormalkan repo lokal saya di Mac dan Windows saya, yang berakhir di folder lokal yang berbeda.
Klien Windows 10 membuat saya melalui rutinitas "Tidak Dapat Menemukan"> "Temukan", membosankan tetapi tidak mengerikan. Juga perlu memperbarui "Jalur klon" lokal di Opsi untuk penggunaan di masa mendatang.
Ketika saya mengkonsolidasikan folder mac, klien Github baru saja menemukannya lagi - saya tidak melakukan apa-apa!
sumber
Untuk mengatur path lokal default ke repositori Anda untuk setiap kali Anda mengkloning salah satu dari mereka, Anda hanya harus mengkloning repositori sekali dan mengatur Localpath: / your-path, lalu github secara otomatis mendeteksi path itu sebagai default Anda.
sumber
Pendekatan yang lebih berbasis Git adalah membuat perubahan pada salinan lokal Anda menggunakan
cd
atau menyalin dan menempel lalu mendorong perubahan ini dari repositori lokal ke jauh.Jika Anda mencoba memeriksa status repo lokal Anda, itu mungkin menunjukkan "perubahan tidak terlacak" yang sebenarnya merupakan file yang dipindahkan. Untuk mendorong perubahan ini dengan paksa, Anda perlu mengatur file / direktori ini dengan menggunakan
Semoga ini bisa membantu.
sumber