Ringkasan terperinci! Operasi biasa Git
Artikel ini membawakan anda pengetahuan yang berkaitan tentang Git Terutamanya meringkaskan isu operasi biasa, termasuk membuat gudang, melihat fail, menambah fail, mengalih keluar fail, mengubah suai kandungan, dsb. Soalan, harap ia membantu semua orang.
Pembelajaran yang disyorkan: "Tutorial Git"
1 Cipta repositori Git
Buka diperlukan Untuk mencipta lokasi gudang, buka antara muka perintah Git
atau masukkan Terminal untuk mencipta gudang. git init
Selepas penciptaan selesai, anda akan digesa
Gudang Initialized empty Git repository in /Users/huaqiangsun/Git/.git/
kosong telah dimulakan dalam direktori semasa, dan anda boleh melihat folder Git
tambahan dalam direktori ( biasanya folder tersembunyi, Di bawah Mac, anda boleh menggunakan kombinasi kekunci pintasan .git
untuk melihat fail tersembunyi). shift cmd .
, konsep Git
ruang kerja, kawasan pementasan dan pustaka versi sering disebut istilah yang sangat biasa. , sebenarnya, ruang kerja secara amnya merujuk kepada direktori di mana fail yang boleh kita lihat dan fail operasi setempat terletak di sini dibahagikan kepada fail terkawal versi dan fail yang tidak berada di bawah kawalan versi. Apabila
Fail baharu dalam ruang kerja dan fail yang telah diubah suai dan berada di bawah kawalan versi boleh ditambah ke kawasan pementasan menggunakan index
, yang bersamaan dengan Daftar dan berikan nama anda Apabila menyerahkan kepada repositori pada masa hadapan, anda akan membawa semua fail yang didaftarkan, sebenarnya, fail yang melaksanakan perintah git add file_name
akan menghasilkan objek objek yang sepadan dan meletakkannya dalam <. direktori> Status akan berubah Untuk git add
, cawangan akan merujuk objek ini apabila melakukan repositori. .git/objects
staged
Repositori ialah destinasi untuk pengubahsuaian fail Pengubahsuaian akhir akan diserahkan kepada repositori Pada masa ini, status fail yang diserahkan menjadi
repositori akan merekodkannya Setiap kali anda menyerahkan, anda boleh mengesan kandungan setiap pengubahsuaian yang anda buat. committed
unmodified
Status fail biasanya boleh dibahagikan kepada:
bukan di bawah kawalan versiAntaranya,status;
- Status ;
untracked
di bawah kawalan versi dan diubah suai- status yang telah diubah suai di bawah kawalan versi dan diserahkan kepada kawasan pementasan;
modified
- status yang telah dihantar dari kawasan pementasan ke gudang tempatan; >
diserahkan kepada gudang tempatan tanpa pengubahsuaian atau diklon dari gudang jauhstaged
Statuscommitted
- Gunakan
unmodified
untuk melihat pengubahsuaian fail dan fail tidak komited dalam semasa; gudang .
git status
merupakan fail yang sudah wujud di dalam kawasan simpanan sementara dan perlu diserahkan ke gudang
Fail yang belum dihantar ke kawasan pementasan adalah fail yang telah dimanipulasi perlu ditambah ke kawasan cache menggunakan
- dan kemudian diserahkan ke gudang; >
kawasan, jika tidak, fail dalam gudang selepasChanges to be committed
ialah fail yang belum dimasukkan ke dalam kawasan pementasan; dalam kawasan storan bukan sementara dan perlu ditambahkan ke kawasan storan sementara sekali lagi- tidak akan mengandungi kandungan pengubahsuaian sekunder.
RingkasanChanges not staged for commit
add
Untracked files
Anda hanya boleh melihat bilangan penyerahan yang belum dihantar, tetapi bukan maklumat fail tertentu; >add
Anda hanya boleh melihat penerangan/arahan penyerahan yang belum dihantar; commit
boleh melihat maklumat terperinci tentang penyerahan yang belum dihantar; kawasan pementasan Tambah fail dalam Gunakan
untuk menambah fail pada kawasan pementasan.Apabila memadamkan fail yang telah dihantar ke gudang daripada cakera, kerana fail itu masih wujud dalam cache gudang, gunakanJika tiada mesej digesa, ini bermakna fail telah berjaya ditambahkan.
git status
Untuk menambah fail, anda perlu mengisi laluan fail yang betul Jika anda perlu menambah berbilang fail, gunakan ruang untuk memisahkannya.- 4. Hantar fail dalam kawasan pementasan
Gunakangit cherry -v
- untuk menghantar fail yang telah ditambahkan ke kawasan pementasan boleh dihantar untuk setiap penyerahan.
5. Keluarkan fail dari gudanggit log master ^origin/master
untuk memadam ia daripada cache Fail tidak lagi akan disertakan dalam pengurusan versi selepas penyerahan.
Jika operasi semasa adalah kesilapan, anda boleh mendapatkan semula fail melalui operasi rollback. git add [fileName ...]
Jika anda ingin memadam fail yang telah diubah suai sebelum ini atau telah diletakkan di kawasan storan sementara, anda mesti menggunakan parameter pilihan pemadaman paksa -f
.
Jika beberapa fail yang tidak diperlukan diserahkan ke gudang kerana salah operasi, anda boleh menggunakan --cached
untuk memadam hanya rekod dalam gudang tanpa memadamkannya daripada cakera.
git rm
Nama fail atau direktori boleh disenaraikan selepas arahan, atau corak glob
boleh digunakan. Contohnya: git rm log/*.log
.
Perhatikan garis miring ke belakang *
sebelum asterisk Kerana
Git
mempunyai kaedah pemadanan corak fail sendiri, tidak perlu shell
untuk membantu mengembangkan. Perintah ini memadamkan semua fail dengan sambungan log/
dalam direktori .log
.
6. Tetapkan abaikan fail
Untuk sesetengah fail log, fail sementara dan fail konfigurasi atau output yang dijana oleh sesetengah perisian, pengurusan fail tidak diperlukan, jadi anda boleh mencipta fail .gitignore
. Nama atau ungkapan fail yang diabaikan ditulis ke dalam fail .gitignore
untuk mencapai tujuan mengabaikan fail. Spesifikasi format
fail .gitignore
adalah seperti berikut:
- Semua baris atau baris kosong bermula dengan
#
akan diabaikan oleh Git. - boleh menggunakan padanan corak
glob
standard, yang akan digunakan secara rekursif di seluruh ruang kerja. - corak padanan boleh bermula dengan (
/
) untuk mengelakkan pengulangan. - Corak padanan boleh menentukan direktori yang berakhir dengan (
/
). - Untuk mengabaikan fail atau direktori di luar corak yang ditentukan, anda boleh menafikannya dengan menambahkan tanda seru (
!
) sebelum corak.
git
turut menyokong mod Glob
, iaitu ungkapan biasa yang dipermudahkan dalam Glob
. Shell
- Asterisk (
- ) sepadan dengan sifar atau lebih daripada mana-mana aksara;
*
- sepadan dengan mana-mana aksara yang disenaraikan dalam kurungan segi empat sama (contoh ini sepadan dengan sama ada a, sama ada sepadan dengan a b atau c);
[abc]
Tanda soal ( - ) hanya sepadan dengan satu aksara arbitrari
?
Jika tanda sempang digunakan untuk memisahkan dua aksara dalam kurungan segi empat sama, ia bermakna semua Apa-apa sahaja dalam dua julat aksara ini; boleh dipadankan (contohnya, [0-9] bermaksud memadankan semua nombor dari 0 hingga 9).
Gunakan dua asterisk ( - ) untuk memadankan mana-mana direktori perantaraan Contohnya, a/**/z boleh memadankan a/z, a/b/z atau a/b/c/z, dsb. .
**
Langkah-langkah untuk pengesahan fail adalah seperti berikut: .gitignore
7. Lihat kandungan pengubahsuaian FailMenggunakan
// Semak status dan sahkan sama ada fail yang diabaikan telah disertakan
git status --ignored
// Kosongkan cache, -r bermaksud pemadaman rekursif
git rm -r --cached .
// Semak kesan khusus
git status --ignored
// Jejak semula fail
git add .
// Serah dan komen
git commit -m "update .gitignore"
hanya boleh melihat status pengubahsuaian setiap fail, tetapi anda tidak dapat melihat kandungan setiap fail yang telah diubah suai, jadi anda boleh menggunakan git status
untuk melihat perbandingan pengubahsuaian semua fail penjejakan . git diff
Perlu diingat bahawa
digunakan untuk melihat kandungan yang diubah suai dalam fail tidak berperingkat Sebaik sahaja fail itu ditambahkan ke kawasan berperingkat, anda tidak lagi boleh melihat pengubahsuaian melalui git diff
Kandungan , perlu menggunakan git diff
. git diff --cached
. git mv [oldFileName] [new FileName]
Operasi penamaan semula akan dibahagikan kepada tiga langkah Langkah pertama ialah menamakan semula fail, kemudian memadam fail asal dari gudang, dan akhirnya menambah fail baharu ke kawasan storan sementara untuk menunggu penyerahan. Git
$ mv README.md LOOKME.md $ git rm README.md $ git add LOOKME.md
operasi rollback untuk kembali ke keadaan sebelum pengubahsuaian. Git
- tidak di bawah kawalan versi
- status;
untracked
di bawah kawalan versi Dan. Status - telah diubah suai;
modified
telah diubah suai dan diserahkan kepada kawasan pementasan di bawah kawalan versi - status
staged
telah diserahkan dari kawasan pementasan ke gudang tempatan - Status;
committed
Dihantar ke repositori tempatan tanpa pengubahsuaian atau diklon dari repositori jauh - Status
unmodified
atau git restore --staged [fileName]
untuk memulihkan fail dalam kawasan pementasan. git reset HEAD [fileName]
Penerangan: Perintah
git restore
baru ditambahkan selepas versiGit 2.23
Ia digunakan untuk berkongsi fungsi perintahgit checkout
Dengan menimpa pengubahsuaian fail tempatan dengan fail dalam kawasan pementasan atau pustaka versi, Untuk mencapai tujuan mengembalikan pengubahsuaian, anda juga boleh menggunakan fail dalam repositori untuk menulis ganti fail dalam kawasan storan sementara untuk melancarkan perintahgit add
.
!! Ambil perhatian bahawa operasi ini tidak akan menjejaskan rekod cawangan, ia bersamaan dengan perintahgit checkout
sebelumnya untuk menyemak semula fail untuk menulis ganti pengubahsuaian setempat.
git reset
sebenarnya digunakan untuk menetapkan titik kepala cawangan Selepas membuat beberapa siri penyerahan, tiba-tiba saya mendapati terdapat masalah dengan penyerahan baru-baru ini dan ingin memadamkannya daripada penyerahan. rekod. Ya, perintah git reset
akan digunakan diikuti oleh commit id
, yang bermaksud bahawa cawangan semasa digulung semula ke keadaan yang sepadan dengan rekod log berikutnya. Status fail dalam ruang kerja bergantung pada parameter yang akan dipulihkan kepada keadaan yang berbeza. commit id
: Pengubahsuaian versi yang telah digulung semula akan diletakkan di kawasan pementasan dan boleh diserahkan semula.
--soft
: Pilihan lalai, perubahan pada versi yang digulung semula akan diletakkan dalam direktori kerja ia boleh ditambahkan ke kawasan pementasan dahulu dan kemudian diserahkan.
--mixed
: Perubahan dalam versi gulung belakang akan dibuang terus, seolah-olah ia tidak pernah datang.
--hard
untuk melancarkan semula fail ke keadaan yang sepadan dengan versi yang ditunjukkan oleh git rest HEAD file_name
, yang sebenarnya ialah keadaan dalam pustaka versi semasa, iaitu setara dengan pemulihan. HEAD
: git add
-
git rm --cached newfile
git restore --staged newfile
git reset HEAD newfile
Nota: Apabila menggunakan dua arahan terakhir, ia tidak boleh menjadi fail pertama dalam repositori.
9.2 Buat asal pengubahsuaian pada fail Gunakan untuk melancarkan semula fail ke keadaan terakhir diserahkan. git checkout -- [fileName]
adalah perintah yang berbahaya. Sebarang pengubahsuaian setempat yang anda buat pada fail itu akan hilang. git checkout -- <file></file>
akan menimpanya dengan versi yang paling baru dilakukan. Jangan gunakan arahan ini melainkan anda tahu pasti bahawa anda tidak mahu membuat pengubahsuaian setempat pada fail tersebut. Git
Pernyataan: Memandangkan fail yang belum ditambahkan pada kawasan pementasan tidak dapat dikesan, sebarang pengubahsuaian padanya tidak boleh ditarik balik! Ini hanya boleh dilakukan melalui operasi buat asal fail tempatan.
10 Lihat sejarah operasi Jika anda ingin melihat semua maklumat penyerahan dalam projek, anda boleh menggunakan untuk mencetak rekod penyerahan semua peserta. git log
yang diserahkan, nama pengarang dan alamat e-mel serta masa penyerahan, disusun mengikut urutan terbalik masa penyerahan. SHA-1
Selain
yang ringkas, anda juga boleh menambah parameter untuk menapis dan memformat maklumat output: git log
: Ia akan dipaparkan setiap Perbezaan yang diperkenalkan oleh komit. Ia juga mungkin untuk mengehadkan bilangan entri log yang dipaparkan, contohnya menggunakan pilihan -2 untuk hanya memaparkan dua komit terkini.
-p --patch
: Senaraikan semua fail yang diubah suai, bilangan fail yang telah diubah suai dan bilangan fail yang diubah suai di bawah setiap penyerahan Baris yang telah dialih keluar atau ditambah. Terdapat juga ringkasan pada akhir setiap penyerahan.
--stat
: Pilihan ini mempunyai beberapa sub-pilihan terbina dalam untuk anda gunakan. Contohnya,
--pretty
akan memaparkan setiap penyerahan pada satu baris, yang sangat berguna apabila menyemak imbas sebilangan besar penyerahan. Terdapat juga pilihanoneline
,short
danfull
, yang memaparkan maklumat dalam format yang sama, tetapi dengan tahap perincian yang berbezafuller
Gunakan
untuk menyesuaikan format pencetakan; . Maklumat format yang biasa digunakan adalah seperti berikut:formart
示例 10.1 将日志信息显示在一行上
$ git log --pretty=oneline
示例 10.2 以 short 格式输出仓库修改信息
$ git log --pretty=short
示例 10.3 以 full 格式输出仓库修改信息
$ git log --pretty=full
示例 10.4 以 fuller 格式输出仓库修改信息
$ git log --pretty=fuller
修改文件人员与提交文件人员可以不是同一个人,所以在查询日志时会区分修改人与提交人。
推荐学习:《Git学习教程》
Atas ialah kandungan terperinci Ringkasan terperinci! Operasi biasa Git. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Untuk selamat menyambung ke pelayan Git Jauh, kunci SSH yang mengandungi kekunci awam dan swasta perlu dijana. Langkah -langkah untuk menghasilkan kunci SSH adalah seperti berikut: Buka terminal dan masukkan perintah SSH -Keygen -T RSA -B 4096. Pilih lokasi penjimatan utama. Masukkan frasa kata laluan untuk melindungi kunci peribadi. Salin kunci awam ke pelayan jauh. Simpan kunci peribadi dengan betul kerana ia adalah kelayakan untuk mengakses akaun.

Untuk memadam repositori Git, ikuti langkah -langkah ini: Sahkan repositori yang anda mahu padamkan. Penghapusan repositori tempatan: Gunakan perintah RM -RF untuk memadam foldernya. Jauh memadam gudang: Navigasi ke tetapan gudang, cari pilihan "Padam Gudang", dan sahkan operasi.

Untuk mengesan SSH melalui Git, anda perlu melakukan langkah -langkah berikut: menghasilkan pasangan kunci SSH. Tambah kunci awam ke pelayan Git. Konfigurasikan Git untuk menggunakan SSH. Uji sambungan SSH. Menyelesaikan masalah yang mungkin mengikut keadaan sebenar.

Bagaimana untuk menambah kunci awam ke akaun Git? Langkah: Menjana pasangan kunci SSH. Salin kunci awam. Tambah kunci awam di Gitlab atau GitHub. Uji sambungan SSH.

Selesaikan: Apabila kelajuan muat turun git perlahan, anda boleh mengambil langkah -langkah berikut: periksa sambungan rangkaian dan cuba menukar kaedah sambungan. Mengoptimumkan Konfigurasi Git: Meningkatkan Saiz Penampan Pos (Git Config-Global Http.PostBuffer 524288000), dan mengurangkan had berkelajuan rendah (git config --global http.lowspeedlimit 1000). Gunakan proksi Git (seperti Git-Proxy atau Git-LFS-Proxy). Cuba gunakan klien Git yang berbeza (seperti sourcetree atau github desktop). Periksa perlindungan kebakaran

Menyambungkan pelayan Git ke rangkaian awam termasuk lima langkah: 1. Sediakan alamat IP awam; 2. Buka port firewall (22, 9418, 80/443); 3. Konfigurasi akses SSH (menghasilkan pasangan utama, buat pengguna); 4. Konfigurasi akses HTTP/HTTPS (pasang pelayan, konfigurasikan keizinan); 5. Uji sambungan (menggunakan klien SSH atau arahan git).

Untuk melepaskan komitmen git, anda boleh menggunakan perintah Reset Git -Hard ~ n, di mana n mewakili bilangan komitmen untuk jatuh balik. Langkah -langkah terperinci termasuk: Tentukan bilangan komitmen untuk dilancarkan kembali. Gunakan pilihan -sukar untuk memaksa sandaran. Jalankan perintah itu kembali kepada komit yang ditentukan.

Konflik kod merujuk kepada konflik yang berlaku apabila pelbagai pemaju mengubah suai kod yang sama dan menyebabkan Git bergabung tanpa memilih perubahan secara automatik. Langkah -langkah resolusi termasuk: Buka fail yang bercanggah dan cari kod yang bercanggah. Gabungkan kod secara manual dan salin perubahan yang anda mahu masuk ke dalam penanda konflik. Padam tanda konflik. Simpan dan serahkan perubahan.
