
Input yang diperlukan:
- Baca, ikuti dan fahami artikel saya tentang Git . Ini akan membantu memastikan segala-galanya disediakan dan sedia untuk digunakan.
- Pasang IntelliJ IDEA.
- Peruntukkan satu jam masa peribadi untuk mencapai penguasaan sepenuhnya.
Klonkan projek secara tempatan
Terdapat dua pilihan di sini:- Jika anda sudah mempunyai akaun GitHub dan ingin meneruskan sesuatu kemudian, lebih baik anda membatalkan projek itu dan mengklon salinan anda sendiri.
- Klon repositori saya dan lakukan segala-galanya secara tempatan tanpa keupayaan untuk menolak semuanya ke pelayan. Lagipun, ini adalah repositori saya :)
-
Salin alamat projek:
-
Buka IntelliJ IDEA dan pilih "Dapatkan daripada Kawalan Versi":
-
Salin dan tampal alamat projek:
-
Anda akan digesa untuk mencipta projek IntelliJ IDEA. Terima tawaran:
-
Memandangkan tiada sistem binaan dan itu di luar skop artikel ini, kami memilih Cipta projek daripada sumber sedia ada :
-
Seterusnya anda akan melihat skrin yang cantik ini:
Sekarang setelah kami mengetahui pengklonan, anda boleh melihat sekeliling.
Pandangan pertama pada IntelliJ IDEA sebagai UI Git
Lihat lebih dekat projek klon: anda sudah boleh mendapatkan banyak maklumat tentang sistem kawalan versi. Pertama, kami mempunyai anak tetingkap Kawalan Versi di sudut kiri bawah. Di sini anda boleh menemui semua perubahan setempat dan mendapatkan senarai komit (bersamaan dengan "git log"). Mari kita beralih kepada perbincangan Log . Terdapat visualisasi tertentu yang membantu kita memahami dengan tepat bagaimana pembangunan telah berjalan. Sebagai contoh, anda boleh melihat bahawa cawangan baharu telah dibuat dengan pengepala tambahan kepada komit txt , yang kemudiannya digabungkan ke dalam cawangan induk. Jika anda mengklik pada komit, anda boleh melihat di penjuru kanan semua maklumat tentang komit: semua perubahan dan metadatanya.



Bekerja dengan repositori
Kekunci panas yang berguna
Untuk kerja masa hadapan, anda perlu mengingati beberapa kekunci pintas yang sangat berguna:- CTRL+T — Dapatkan perubahan terkini daripada repositori jauh (git pull).
- CTRL+K — Buat komit / lihat semua perubahan semasa. Ini termasuk kedua-dua fail yang tidak dijejaki dan diubah suai (lihat artikel saya tentang git, yang menerangkannya) (git commit).
- CTRL+SHIFT+K — Ini ialah arahan untuk menolak perubahan pada repositori jauh. Semua komit yang dibuat secara tempatan dan belum dalam repositori jauh akan ditolak (git push).
- ALT+CTRL+Z — Tukar balik dalam fail tertentu kepada keadaan komit terakhir yang dibuat dalam repositori tempatan. Jika anda memilih keseluruhan projek di penjuru kiri sebelah atas, anda boleh melancarkan semula perubahan dalam semua fail.

Apa yang kita mahu?
Untuk menyelesaikan kerja, kita perlu menguasai senario asas yang digunakan di mana-mana. Objektifnya adalah untuk melaksanakan fungsi baharu dalam cawangan berasingan dan kemudian menolaknya ke repositori jauh (maka anda juga perlu membuat permintaan tarik ke cawangan utama, tetapi itu di luar skop artikel ini). Apa yang diperlukan untuk melakukan ini?-
Dapatkan semua perubahan semasa dalam cawangan utama (contohnya, "tuan").
-
Daripada cawangan utama ini, buat cawangan berasingan untuk kerja anda.
-
Laksanakan fungsi baharu.
-
Pergi ke cawangan utama dan semak sama ada terdapat sebarang perubahan baharu semasa kami bekerja. Jika tidak, maka semuanya baik-baik saja. Tetapi jika terdapat perubahan, maka kami melakukan perkara berikut: pergi ke cawangan kerja dan asas semula perubahan dari cawangan utama kepada kami. Jika semuanya berjalan lancar, maka hebat. Tetapi kemungkinan besar akan ada konflik. Seperti yang berlaku, mereka hanya boleh diselesaikan terlebih dahulu, tanpa membuang masa di repositori jauh.
Adakah anda tertanya-tanya mengapa anda perlu melakukan ini? Ia adalah adab yang baik dan menghalang konflik daripada berlaku selepas menolak cawangan anda ke repositori tempatan (sudah tentu, terdapat kemungkinan konflik masih akan berlaku, tetapi ia menjadi lebih kecil ).
- Tolak perubahan anda ke repositori jauh.
Dapatkan perubahan daripada pelayan jauh?
Saya menambah penerangan pada README dengan komitmen baharu dan ingin mendapatkan perubahan ini. Jika perubahan dibuat dalam repositori tempatan dan dalam repositori terpencil, maka kami dijemput untuk memilih antara gabungan dan pangkalan semula. Kami memilih untuk bergabung. Masukkan CTRL+T :

Buat cawangan baharu berdasarkan master
Semuanya mudah di sini.-
Pergi ke penjuru kanan sebelah bawah dan klik Git: master . Pilih + Cawangan Baharu .
Biarkan kotak semak cawangan Checkout dipilih dan masukkan nama cawangan baharu. Bagi saya, ia akan menjadi readme-improver .

Git: master kemudiannya akan bertukar kepada Git: readme-improver .
Mari kita simulasi kerja selari
Untuk konflik muncul, seseorang perlu menciptanya :D Saya akan mengedit README dengan komit baharu melalui penyemak imbas, dengan itu mensimulasikan kerja selari. Seolah-olah seseorang membuat perubahan dalam fail yang sama semasa saya sedang mengusahakannya. Akibatnya akan menjadi konflik. Saya akan mengalih keluar perkataan "fully" daripada baris 10.Laksanakan fungsi kami
Tugas kami ialah menukar README dan menambah penerangan pada artikel baharu. Iaitu, kerja dalam Git melalui IntelliJ IDEA. Tambah ini:


Semak sama ada cawangan utama telah berubah
Kami menyelesaikan tugas kami. Ianya berfungsi. Kami menulis ujian. Semuanya baik-baik sahaja. Tetapi sebelum menolak ke pelayan, kami masih perlu menyemak sama ada terdapat sebarang perubahan dalam cawangan utama dalam masa yang sama. Bagaimana itu boleh berlaku? Agak mudah: seseorang menerima tugasan selepas anda, dan seseorang itu menyelesaikannya lebih cepat daripada anda menyelesaikan tugasan anda. Jadi kita perlu pergi ke cawangan induk. Untuk melakukan ini, kita perlu melakukan apa yang ditunjukkan di sudut kanan bawah dalam tangkapan skrin di bawah:



- terima milik anda — terima hanya perubahan daripada readme-improver.
- terima mereka — terima sahaja perubahan daripada tuan.
- cantumkan — pilih sendiri apa yang anda mahu simpan dan apa yang perlu dibuang.

- Ini ialah perubahan daripada readme-improver.
- Hasil gabungan. Buat masa ini, ia adalah apa yang wujud sebelum perubahan.
- Perubahan daripada cawangan induk.

Tolak perubahan pada pelayan jauh
Langkah seterusnya ialah menolak perubahan pada pelayan jauh dan membuat permintaan tarik. Untuk melakukan ini, hanya tekan CTRL+SHIFT+K . Kemudian kita dapat:

Bahagian bonus
Pada mulanya, saya tidak mahu menambah penciptaan permintaan tarik pada artikel ini, tetapi ia tidak lengkap tanpanya. Jadi, mari kita pergi ke repositori GitHub (yang milik anda, sudah tentu :)) dan kita melihat bahawa GitHub sudah tahu apa yang kita mahu:

GO TO FULL VERSION