Ini adalah perintah git-fetch yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
git-fetch - Unduh objek dan referensi dari repositori lain
RINGKASAN
git mengambil [ ] [ [ ...]]
git mengambil [ ]
git mengambil --banyak [ ] [( | )...]
git mengambil --semua [ ]
DESKRIPSI
Ambil cabang dan/atau tag (secara kolektif, "ref") dari satu atau lebih repositori lain,
bersama dengan objek yang diperlukan untuk melengkapi sejarah mereka. Cabang pelacakan jarak jauh adalah
diperbarui (lihat deskripsi di bawah ini untuk cara mengontrol perilaku ini).
Secara default, setiap tag yang mengarah ke histori yang diambil juga diambil; NS
efeknya adalah mengambil tag yang mengarah ke cabang yang Anda minati. Default ini
perilaku dapat diubah dengan menggunakan opsi --tags atau --no-tags atau dengan mengonfigurasi
terpencil. .tagOpt. Dengan menggunakan refspec yang mengambil tag secara eksplisit, Anda dapat mengambil tag
yang tidak mengarah ke cabang yang Anda minati juga.
git mengambil dapat mengambil dari satu repositori atau URL bernama, atau dari beberapa
repositori sekaligus jika diberikan dan ada remote. masuk di
berkas konfigurasi. (Lihat git-config(1)).
Ketika tidak ada remote yang ditentukan, secara default remote asal akan digunakan, kecuali ada
cabang hulu dikonfigurasi untuk cabang saat ini.
Nama-nama referensi yang diambil, bersama dengan nama objek yang mereka tunjuk, adalah
ditulis ke .git/FETCH_HEAD. Informasi ini dapat digunakan oleh skrip atau perintah git lainnya,
seperti git-tarik(1).
PILIHAN
--semua
Ambil semua remote.
-a, --tambahkan
Tambahkan nama referensi dan nama objek dari referensi yang diambil ke konten yang ada
.git/FETCH_HEAD. Tanpa opsi ini, data lama di .git/FETCH_HEAD akan ditimpa.
--kedalaman=
Batasi pengambilan ke jumlah komit yang ditentukan dari ujung setiap cabang jarak jauh
sejarah. Jika mengambil ke a dangkal repositori dibuat oleh git clone dengan --depth=
pilihan (lihat git-klon(1)), memperdalam atau mempersingkat sejarah ke jumlah yang ditentukan
berkomitmen. Tag untuk komit yang diperdalam tidak diambil.
--tidak dangkal
Jika repositori sumber selesai, ubah repositori dangkal menjadi repositori yang lengkap,
menghapus semua batasan yang dikenakan oleh repositori dangkal.
Jika repositori sumber dangkal, ambil sebanyak mungkin sehingga arus
repositori memiliki riwayat yang sama dengan repositori sumber.
--update-dangkal
Secara default saat mengambil dari repositori dangkal, git fetch menolak referensi yang
perlu memperbarui .git/dangkal. Opsi ini memperbarui .git/shallow dan menerima referensi tersebut.
--lari-kering
Tunjukkan apa yang akan dilakukan, tanpa membuat perubahan apa pun.
-f, --kekuatan
Ketika git mengambil digunakan dengan : refspec, ia menolak untuk memperbarui
cabang lokal kecuali cabang jarak jauh itu mengambil adalah keturunan
dari . Opsi ini mengesampingkan pemeriksaan itu.
-k, --simpan
Simpan paket yang diunduh.
--banyak
Izinkan beberapa dan argumen yang akan ditentukan. Tidak s mungkin
ditentukan.
-p, --pangkas
Setelah mengambil, hapus semua referensi pelacakan jarak jauh yang tidak lagi ada di
terpencil. Tag tidak dikenakan pemangkasan jika diambil hanya karena
tag default mengikuti otomatis atau karena opsi --tags. Namun, jika tag diambil karena
ke refspec eksplisit (baik pada baris perintah atau dalam konfigurasi jarak jauh, untuk
contoh jika remote dikloning dengan opsi --mirror), maka mereka juga tunduk
untuk memangkas.
-n, --no-tag
Secara default, tag yang mengarah ke objek yang diunduh dari repositori jarak jauh
diambil dan disimpan secara lokal. Opsi ini menonaktifkan tag otomatis berikut ini. NS
perilaku default untuk remote dapat ditentukan dengan remote. pengaturan .tagOpt.
Lihat git-config(1).
--refmap=
Saat mengambil referensi yang terdaftar di baris perintah, gunakan refspec yang ditentukan (dapat diberikan
lebih dari sekali) untuk memetakan referensi ke cabang pelacakan jarak jauh, alih-alih nilai
remote.*.fetch variabel konfigurasi untuk repositori jarak jauh. Lihat bagian di
"Cabang Pelacakan Jarak Jauh yang Dikonfigurasi" untuk detailnya.
-t, --tag
Ambil semua tag dari jarak jauh (yaitu, ambil referensi/tag/* tag jarak jauh ke dalam tag lokal
dengan nama yang sama), selain apa pun yang lain akan diambil. Menggunakan
opsi ini saja tidak menyebabkan tag untuk pemangkasan, bahkan jika --prune digunakan (meskipun
tag mungkin tetap dipangkas jika mereka juga merupakan tujuan dari refspec eksplisit; Lihat
--memangkas).
--recurse-submodules[=ya|sesuai permintaan|tidak]
Opsi ini mengontrol jika dan dalam kondisi apa komit baru dari submodul yang terisi
harus diambil juga. Ini dapat digunakan sebagai opsi boolean untuk menonaktifkan sepenuhnya
rekursi ketika diatur ke tidak atau untuk berulang tanpa syarat ke semua submodul yang terisi
ketika diatur ke iya nih, yang merupakan default saat opsi ini digunakan tanpa nilai apa pun. Menggunakan
sesuai permintaan untuk hanya berulang menjadi submodul yang terisi ketika superproject mengambil a
komit yang memperbarui referensi submodul ke komit yang belum ada di
klon submodul lokal.
--tidak ada-submodul berulang
Nonaktifkan pengambilan submodul secara rekursif (ini memiliki efek yang sama seperti menggunakan
--recurse-submodules=tidak pilihan).
--submodule-prefix=
tambahkan ke jalur yang dicetak dalam pesan informatif seperti "Mengambil submodule
foo". Opsi ini digunakan secara internal saat berulang pada submodul.
--recurse-submodules-default=[ya|sesuai permintaan]
Opsi ini digunakan secara internal untuk sementara memberikan nilai default non-negatif untuk
opsi --recurse-submodules. Semua metode lain untuk mengonfigurasi submodule fetch
rekursi (seperti pengaturan di gitmodules(5) dan git-config(1)) menimpa opsi ini,
seperti halnya menentukan --[no-]recurse-submodules secara langsung.
-u, --perbarui-kepala-ok
Secara default git mengambil menolak untuk memperbarui kepala yang sesuai dengan arus
cabang. Bendera ini menonaktifkan pemeriksaan. Ini murni untuk penggunaan internal untuk git menarik
untuk berkomunikasi dengan git mengambil, dan kecuali Anda menerapkan Porselen Anda sendiri, Anda
tidak seharusnya menggunakannya.
--upload-paket
Saat diberikan, dan repositori untuk diambil ditangani oleh git mengambil-paket,
--exec= diteruskan ke perintah untuk menentukan jalur non-default untuk
perintah dijalankan di ujung yang lain.
-q, --tenang
Lewati --quiet ke git-fetch-pack dan diamkan perintah git lain yang digunakan secara internal.
Kemajuan tidak dilaporkan ke aliran kesalahan standar.
-v, --bertele-tele
Bertele-tele.
--kemajuan
Status kemajuan dilaporkan pada aliran kesalahan standar secara default ketika itu
dilampirkan ke terminal, kecuali -q ditentukan. Bendera ini memaksa status kemajuan
jika aliran kesalahan standar tidak diarahkan ke terminal.
Repositori "jarak jauh" yang merupakan sumber dari operasi pengambilan atau penarikan. Ini
parameter dapat berupa URL (lihat bagian URL GIT di bawah) atau nama remote
(lihat bagian REMOTE di bawah).
Nama yang mengacu pada daftar repositori sebagai nilai remote. dalam
berkas konfigurasi. (Lihat git-config(1)).
Menentukan referensi mana yang akan diambil dan referensi lokal mana yang akan diperbarui. Ketika tidak S
muncul di baris perintah, referensi untuk diambil dibaca dari jarak jauh. .mengambil
sebagai gantinya (lihat CABANG PELACAKAN JAUH DIKONFIGURASI di bawah).
Format dari parameter adalah plus + opsional, diikuti oleh referensi sumber
, diikuti oleh titik dua :, diikuti oleh ref tujuan . usus besar dapat
dihilangkan ketika kosong.
menandai artinya sama dengan ref/tag/ :ref/tag/ ; itu meminta pengambilan
semuanya hingga tag yang diberikan.
Ref jarak jauh yang cocok diambil, dan jika bukan string kosong,
referensi lokal yang cocok dengannya diteruskan dengan cepat menggunakan . Jika plus + opsional adalah
digunakan, referensi lokal diperbarui meskipun tidak menghasilkan pembaruan maju cepat.
Note
Ketika cabang jarak jauh yang ingin Anda ambil diketahui diputar ulang dan di-rebase
secara teratur, diharapkan tip barunya tidak akan menjadi turunan dari sebelumnya
tip (seperti yang disimpan di cabang pelacakan jarak jauh Anda terakhir kali Anda mengambil). Anda
ingin menggunakan tanda + untuk menunjukkan bahwa pembaruan non-maju cepat akan diperlukan
untuk cabang seperti itu. Tidak ada cara untuk menentukan atau menyatakan bahwa suatu cabang akan menjadi
tersedia dalam repositori dengan perilaku ini; pengguna yang menarik hanya harus
tahu ini adalah pola penggunaan yang diharapkan untuk cabang.
GIT URL
Secara umum, URL berisi informasi tentang protokol transport, alamat dari
server jarak jauh, dan jalur ke repositori. Tergantung pada protokol transport, beberapa
informasi ini mungkin tidak ada.
Git mendukung protokol ssh, git, http, dan https (selain itu, ftp, dan ftps dapat digunakan
untuk mengambil dan rsync dapat digunakan untuk mengambil dan mendorong, tetapi ini tidak efisien dan
usang; tidak menggunakannya).
Transport asli (yaitu git:// URL) tidak melakukan otentikasi dan harus digunakan dengan
hati-hati pada jaringan yang tidak aman.
Sintaks berikut dapat digunakan dengan mereka:
· ssh://[pengguna@]host.xz[:port]/path/to/repo.git/
· git://host.xz[:port]/path/to/repo.git/
· http[s]://host.xz[:port]/path/to/repo.git/
· ftp[s]://host.xz[:port]/path/ke/repo.git/
· rsync://host.xz/path/to/repo.git/
Sintaks mirip scp alternatif juga dapat digunakan dengan protokol ssh:
· [pengguna@]host.xz:path/to/repo.git/
Sintaks ini hanya dikenali jika tidak ada garis miring sebelum titik dua pertama. Ini membantu
membedakan jalur lokal yang berisi titik dua. Misalnya jalur lokal foo:bar bisa
ditentukan sebagai jalur absolut atau ./foo:bar untuk menghindari disalahartikan sebagai url ssh.
Protokol ssh dan git juga mendukung ~ekspansi nama pengguna:
· ssh://[pengguna@]host.xz[:port]/~[pengguna]/path/ke/repo.git/
· git://host.xz[:port]/~[pengguna]/path/ke/repo.git/
· [pengguna@]host.xz:/~[pengguna]/path/ke/repo.git/
Untuk repositori lokal, yang juga didukung oleh Git secara native, sintaks berikut mungkin:
bekas:
· /path/ke/repo.git/
· file:///path/ke/repo.git/
Kedua sintaks ini sebagian besar setara, kecuali saat kloning, ketika yang pertama menyiratkan
--pilihan lokal. Lihat git-klon(1) untuk rincian.
Ketika Git tidak tahu bagaimana menangani protokol transport tertentu, ia mencoba untuk menggunakan
terpencil- pembantu jarak jauh, jika ada. Untuk secara eksplisit meminta pembantu jarak jauh,
sintaks berikut dapat digunakan:
· ::
di mana bisa berupa jalur, server dan jalur, atau string seperti URL arbitrer
dikenali oleh pembantu jarak jauh tertentu yang dipanggil. Lihat gitremote-pembantu(1) untuk
rincian.
Jika ada banyak repositori jarak jauh dengan nama yang sama dan Anda ingin menggunakan a
format yang berbeda untuk mereka (sehingga URL yang Anda gunakan akan ditulis ulang menjadi URL yang
work), Anda dapat membuat bagian konfigurasi dari formulir:
[url " "]
bukanDari =
Misalnya, dengan ini:
[url "git://git.host.xz/"]
bukanDari = host.xz:/path/ke/
bukanDari = bekerja:
URL seperti "work:repo.git" atau seperti "Host.xz:/path/to/repo.git" akan ditulis ulang di sembarang
konteks yang mengambil URL menjadi "git://git.Host.xz/repo.git".
Jika Anda ingin menulis ulang URL hanya untuk push, Anda dapat membuat bagian konfigurasi dari
bentuk:
[url " "]
pushInsteadOf =
Misalnya, dengan ini:
[url "ssh://example.org/"]
pushInsteadOf = git://example.org/
URL seperti "git://example.org/path/to/repo.git" akan ditulis ulang menjadi
"ssh://example.org/path/to/repo.git" untuk push, tetapi pull akan tetap menggunakan yang asli
URL.
REMOTE
Nama salah satu dari berikut ini dapat digunakan sebagai pengganti URL sebagai argumen:
· remote dalam file konfigurasi Git: $GIT_DIR/config,
· file di direktori $GIT_DIR/remotes, atau
· sebuah file di direktori $GIT_DIR/branch.
Semua ini juga memungkinkan Anda untuk menghilangkan refspec dari baris perintah karena masing-masing
berisi refspec yang akan digunakan git secara default.
Bernama terpencil in konfigurasi fillet
Anda dapat memilih untuk memberikan nama remote yang sebelumnya telah Anda konfigurasikan menggunakan
git-jarak jauh(1) git-config(1) atau bahkan dengan pengeditan manual ke file $GIT_DIR/config. URL-nya
remote ini akan digunakan untuk mengakses repositori. Refspec dari remote ini adalah
digunakan secara default ketika Anda tidak memberikan refspec pada baris perintah. Entri di
file konfigurasi akan muncul seperti ini:
[jauh" "]
url =
pushurl =
dorong =
ambil =
NS digunakan untuk push saja. Ini opsional dan default untuk .
Bernama fillet in $GIT_DIR/jarak jauh
Anda dapat memilih untuk memberikan nama file di $GIT_DIR/remotes. URL dalam file ini
akan digunakan untuk mengakses repositori. Refspec dalam file ini akan digunakan sebagai default
ketika Anda tidak memberikan refspec pada baris perintah. File ini harus memiliki yang berikut:
format:
URL: salah satu format URL di atas
Dorongan:
Menarik:
Dorong: garis digunakan oleh git mendorong dan Tarik: garis digunakan oleh git menarik dan git mengambil.
Beberapa baris Push: dan Pull: dapat ditentukan untuk pemetaan cabang tambahan.
Bernama fillet in $GIT_DIR/cabang
Anda dapat memilih untuk memberikan nama file di $GIT_DIR/branch. URL dalam file ini
akan digunakan untuk mengakses repositori. File ini harus memiliki format berikut:
#
diperlukan; # adalah opsional.
Bergantung pada operasinya, git akan menggunakan salah satu dari referensi berikut, jika Anda tidak melakukannya
menyediakan satu di baris perintah. adalah nama file ini di $GIT_DIR/branch
dan default untuk dikuasai.
git fetch menggunakan:
referensi/kepala/ :referensi/kepala/
git push menggunakan:
KEPALA: ref/kepala/
DIKONFIGURASI PELACAKAN JAUH RANTING
Anda sering berinteraksi dengan repositori jarak jauh yang sama dengan mengambil secara teratur dan berulang
dari itu. Untuk melacak kemajuan repositori jarak jauh tersebut, git fetch
memungkinkan Anda untuk mengkonfigurasi jarak jauh. .fetch variabel konfigurasi.
Biasanya variabel seperti itu mungkin terlihat seperti ini:
["asal" jarak jauh]
ambil = +refs/heads/*:refs/remotes/origin/*
Konfigurasi ini digunakan dalam dua cara:
· Ketika git fetch dijalankan tanpa menentukan cabang dan/atau tag apa yang akan diambil pada
baris perintah, misalnya git fetch Origin atau git fetch, remote. .ambil nilai
digunakan sebagai referensi—mereka menentukan referensi mana yang akan diambil dan referensi lokal mana yang akan digunakan
memperbarui. Contoh di atas akan mengambil semua cabang yang ada di asal (yaitu any
ref yang cocok dengan sisi kiri nilai, ref/heads/*) dan perbarui
cabang pelacakan jarak jauh yang sesuai dalam hierarki refs/remotes/Origin/*.
· Ketika git fetch dijalankan dengan cabang dan/atau tag eksplisit untuk diambil pada baris perintah,
misalnya master asal git fetch, the s diberikan pada baris perintah tentukan apa
akan diambil (misalnya master dalam contoh, yang merupakan kependekan dari master:,
yang pada gilirannya berarti "ambil menguasai cabang tapi saya tidak secara eksplisit mengatakan apa
cabang pelacakan jarak jauh untuk memperbaruinya dari baris perintah"), dan contohnya
perintah akan diambil hanya itu menguasai cabang. remote. .ambil nilai
menentukan cabang pelacakan jarak jauh mana, jika ada, yang diperbarui. Ketika digunakan dengan cara ini,
terpencil. Nilai .fetch tidak berpengaruh dalam memutuskan apa diambil
(yaitu nilai-nilai tidak digunakan sebagai refspecs ketika baris perintah mencantumkan refspecs); mereka
hanya digunakan untuk memutuskan dimana referensi yang diambil disimpan dengan bertindak sebagai
pemetaan.
Penggunaan terakhir dari remote. nilai .fetch dapat ditimpa dengan memberikan
--refmap= parameter pada baris perintah.
CONTOH
· Perbarui cabang pelacakan jarak jauh:
$ git ambil asal
Perintah di atas menyalin semua cabang dari referensi jarak jauh/kepala/namespace dan toko
mereka ke referensi lokal/remote/Origin/ namespace, kecuali cabang. .mengambil
option digunakan untuk menentukan refspec non-default.
· Menggunakan refspec secara eksplisit:
$ git fetch asal +pu:pu maint:tmp
Pembaruan ini (atau membuat, jika perlu) bercabang pu dan tmp di repositori lokal dengan
mengambil dari cabang (masing-masing) pu dan memelihara dari repositori jarak jauh.
Cabang pu akan diperbarui meskipun tidak maju cepat, karena itu
diawali dengan tanda tambah; tmp tidak akan.
· Mengintip cabang remote, tanpa mengonfigurasi remote di repositori lokal Anda:
$ git fetch git://git.kernel.org/pub/scm/git/git.git pemeliharaan
$ git log FETCH_HEAD
Perintah pertama mengambil cabang utama dari repositori di
git://git.kernel.org/pub/scm/git/git.git dan perintah kedua menggunakan FETCH_HEAD untuk
periksa cabang dengan git-log(1). Objek yang diambil pada akhirnya akan dihapus oleh
tata graha bawaan git (lihat git-gc(1)).
Gunakan git-fetch online menggunakan layanan onworks.net