Jadual Kandungan
Memulakan dan mengemas kini submodul
Menjejaki cawangan tertentu (pilihan tetapi berguna)
Gotchas biasa
Rumah alat pembangunan git Bagaimana saya menambah submodule ke repositori git saya?

Bagaimana saya menambah submodule ke repositori git saya?

Jul 21, 2025 am 12:48 AM

Langkah -langkah untuk menambah submodul ke repositori git adalah seperti berikut: 1. Gunakan Submodule Git Tambah [url] [Path] perintah untuk menambah submodule, yang akan mengklon repositori dan membuat fail .gitmodules; 2. Apabila mengkloning repositori submodule, anda perlu menjalankan kemas kini submodule git -init -recursive untuk memulakan dan mengemas kini submodule; 3. Anda boleh menentukan jejak cawangan tertentu melalui pilihan -B, dan gunakan kemas kini submodule git -Remote untuk mengemaskini ke komit cawangan terkini. Di samping itu, submodul mempunyai direktori bebas. Menguasai langkah -langkah ini secara berkesan dapat mengurus submodul dan mengelakkan kesilapan yang sama.

Bagaimana saya menambah submodule ke repositori git saya?

Menambah submodule ke repositori git anda adalah cara untuk memasukkan projek git lain di dalam anda sebagai subdirektori. Ini membantu mengekalkan perkara yang dianjurkan dan membolehkan anda menjejaki versi tertentu projek luaran. Inilah caranya.

Perintah Asas: git submodule add

Cara yang paling mudah untuk menambah submodul adalah menggunakan perintah git submodule add diikuti oleh URL repositori luaran yang anda ingin sertakan.

Contohnya:

 git submodule tambah https://github.com/example/some-library.git Path/to/submodule

Ini akan:

  • Klon repo luaran ke .git/modules/path/to/submodule
  • Buat direktori kerja di path/to/submodule di repo utama anda
  • Tambahkan fail .gitmodules (jika belum ada) yang memetakan laluan submodule ke URL jauhnya

Anda kemudian boleh melakukan perubahan ini seperti biasa, dan yang lain yang mengklon repo anda akan mendapat persediaan submodule juga - walaupun mereka perlu mengambil satu langkah tambahan (lebih lanjut pada kemudian).

Memulakan dan mengemas kini submodul

Selepas seseorang mengikat repo anda, direktori submodule akan kosong kecuali mereka berlari:

 git submodule init
Kemas kini submodul git

Atau lebih mudah:

 Kemas kini submodule git -init

Ini menarik versi submodul yang betul berdasarkan apa yang dilakukan dalam repo utama anda.

Sekiranya anda menyediakan repo yang sudah mempunyai submodul, berjalan:

 Kemas Kini Submodule Git -Init -Recursive

adalah pertaruhan yang selamat, terutamanya jika terdapat submodul bersarang yang terlibat.

Menjejaki cawangan tertentu (pilihan tetapi berguna)

Secara lalai, submodule menunjuk kepada komit tertentu (bukan cawangan). Ini bermakna walaupun repo jauh berubah, submodul anda tetap disematkan pada versi yang anda tambah.

Tetapi jika anda mahu submodule anda mengikuti cawangan (seperti main atau develop ), gunakan pilihan -b semasa menambahkannya:

 git submodule add -b dev https://github.com/example/some-library.git Path/to/submodule

Kemudian, untuk menarik yang terbaru dari cawangan itu kemudian:

 Kemas kini Submodul Git -Remote

Ini menyimpan submodule yang diselaraskan dengan hujung terkini cawangan dan bukannya komited tetap.

Hanya sedar - ini menjadikan repo anda bergantung pada apa yang ada sekarang di cawangan itu, yang mungkin memperkenalkan ketidakstabilan jika tidak diuruskan dengan teliti.

Gotchas biasa

  • Folder .git/modules .git .git
  • Mengemas kini submodul: Jika anda membuat perubahan di dalam submodul, anda mesti melakukan dan menolak dari dalam direktori submodule.
  • Mengeluarkan submodul: Ia tidak semudah rm . Anda perlu deinitialize dan mengeluarkan entri dari .gitmodules dan .git/config .

Itulah alur kerja teras untuk menambah dan menguruskan submodul. Tidak terlalu buruk apabila anda tahu arahan, tetapi mudah untuk pergi jika anda baru.

Atas ialah kandungan terperinci Bagaimana saya menambah submodule ke repositori git saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Skop pembolehubah PHP dijelaskan
4 minggu yang lalu By 百草
Petua untuk menulis komen php
4 minggu yang lalu By 百草
Mengulas kod dalam php
4 minggu yang lalu By 百草

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1510
276
Bagaimana saya menambah subtree ke repositori git saya? Bagaimana saya menambah subtree ke repositori git saya? Jul 16, 2025 am 01:48 AM

Untuk menambah subtree ke repositori git, mula-mula tambahkan repositori jauh dan dapatkan sejarahnya, kemudian gabungkannya ke dalam subdirektori menggunakan arahan Gitmerge dan Gitread-tree. Langkah-langkah adalah seperti berikut: 1. Gunakan perintah Gitremoteadd-F untuk menambah repositori jauh; 2. Jalankan gitmerge-srecursive-no-commit untuk mendapatkan kandungan cawangan; 3. Gunakan Gitread-Tree-Prefix = untuk menentukan direktori untuk menggabungkan projek sebagai subtree; 4. Mengemukakan perubahan untuk melengkapkan penambahan; 5. Apabila mengemas kini, gitfetch terlebih dahulu dan ulangi penggabungan dan langkah -langkah untuk menyerahkan kemas kini. Kaedah ini mengekalkan sejarah projek luaran lengkap dan mudah dikekalkan.

Bagaimana saya membuat dan beralih ke cawangan git baru dalam satu arahan? Bagaimana saya membuat dan beralih ke cawangan git baru dalam satu arahan? Jul 16, 2025 am 01:39 AM

Ya, anda boleh menggunakan arahan untuk membuat dan beralih ke cawangan git baru, kaedah khusus adalah seperti berikut: 1. Gunakan Gitswitch-C: Ini adalah cara yang lebih moden dan jelas, sebagai contoh, gitswitch-cnew-feature akan mencipta dan beralih ke cawangan bernama baru; 2. Gunakan Gitcheckout-B: Ini adalah kaedah yang lebih tua tetapi biasa digunakan, sebagai contoh, Gitcheckout-Bnew-feature mempunyai kesan yang sama seperti yang pertama. Nota: Gitswitch diperkenalkan dalam GIT2.23, dan versi lama perlu menggunakan gitcheckout. Anda boleh menentukan cawangan berdasarkan cawangan lain, seperti gitswitch-cnew-

Bagaimanakah saya membuat komitmen gabungan walaupun ke hadapan yang cepat mungkin? Bagaimanakah saya membuat komitmen gabungan walaupun ke hadapan yang cepat mungkin? Jul 21, 2025 am 02:22 AM

Gunakan Gitmerge --No-FF untuk memaksa Git untuk membuat gabungan komitmen, walaupun anda boleh maju ke hadapan. 1. Gunakan parameter --no-FF untuk memelihara sejarah cawangan dan menjelaskan sumber perubahan; 2. Kaedah ini amat berguna semasa kajian semula kod atau pengauditan, dan sering digunakan dalam strategi cawangan yang ketat seperti gitflow; 3. Operasi ini boleh automatik dengan mengkonfigurasi alias atau skrip, seperti gitconfig-globalalias.merge-noff '! Gitmerge-no-ff', dengan itu memudahkan proses.

Bagaimana saya membuang submodule dari repositori git saya? Bagaimana saya membuang submodule dari repositori git saya? Jul 19, 2025 am 01:19 AM

TOCLEANLEMOVEAGITSUBMODULE, FirstDeinitializeitWithGitsubModuledeinit-fpath/to/submodule, thendeleteitsfilesviarmarm-rf.git/modu les/path/to/submoduleandgitrm-fpath/to/submodule, dan finallyremoverelatedentriesfrom.git/configand.gitmodulesbefeforeCommittingt

Cara memulihkan cawangan yang dipadam dengan git reflog Cara memulihkan cawangan yang dipadam dengan git reflog Jul 25, 2025 am 12:46 AM

Rungitreflog-tarikh = localToviewRecentReferenceChangesandlocatethedeletedeletedbranchbyitsnameorcommithash.2.identifyTheCommithashushbeforethe "deletedbranch" mesej

Bagaimana saya mengkonfigurasi git dengan nama pengguna dan alamat e -mel saya? Bagaimana saya mengkonfigurasi git dengan nama pengguna dan alamat e -mel saya? Jul 23, 2025 am 02:57 AM

Kaedah untuk menetapkan nama pengguna dan peti mel Git adalah menggunakan gitconfig-globaluser.name dan gitconfig-globaluser.email perintah untuk mengkonfigurasi maklumat identiti di seluruh dunia. Langkah-langkah khusus adalah seperti berikut: 1. Tetapkan nama pengguna: Jalankan gitconfig-globaluser.name "YourName"; 2. Konfigurasi peti mel: Jalankan gitconfig-globaluser.email "your.email@example.com"; 3. Sahkan tetapan: lulus gitconfiguser.name dan gitco

Bilakah saya harus menggunakan git gabungan vs git rebase? Bilakah saya harus menggunakan git gabungan vs git rebase? Jul 22, 2025 am 02:43 AM

UsegitmergetopreserveHistoryandcollaborasifely, terutama sekali

Bagaimanakah saya mengembalikan komit tertentu (mencipta komit baru yang membatalkan perubahan)? Bagaimanakah saya mengembalikan komit tertentu (mencipta komit baru yang membatalkan perubahan)? Jul 20, 2025 am 01:41 AM

Untuk membatalkan komit yang telah ditolak ke repositori tetapi menyimpan sejarah, gunakan Gitrevert untuk mewujudkan komit baru untuk membalikkan perubahan kepada komit yang ditentukan. 1. Gunakan gitlog-eleline untuk mencari nilai hash sasaran komit; 2. Melaksanakan Gitrevert atau seperti Gitreverthead ~ 2 untuk membatalkan komit tertentu; 3. Jika terdapat konflik, menyelesaikannya secara manual dan teruskan dengan Gitrevert-berterusan, atau membatalkan; 4. Maklumat penyerahan boleh diedit dan disahkan; 5. Bagi komitmen yang digabungkan, parameter -M1 perlu ditambah. Kaedah ini selamat untuk cawangan bersama dan mengelakkan masalah yang disebabkan oleh penulisan semula sejarah.

See all articles