JavaRush /Blog Jawa /Random-JV /Miwiti karo Git: pandhuan rinci kanggo pamula

Miwiti karo Git: pandhuan rinci kanggo pamula

Diterbitake ing grup

Tinimbang introduksi

Hello mangsa Senior Software Engineer. Miwiti karo Git: pandhuan rinci kanggo pamula - 1Dina iki kita bakal ngomong babagan sistem kontrol versi, yaiku Git (diwaca minangka GIT, lan dudu JIT, kaya sing katon saka grammar Inggris). Ya, ya, aku ngerti yen ana uga Mercurial, SVN ... Nanging ayo jujur: wektune wis liwati, lan aku ora bakal mbuwang wektu sing larang regane. Supaya sampeyan ngerti pentinge ngerti Git ing jaman saiki, aku bakal ngomong iki: tanpa kawruh / pangerten babagan iki, sampeyan ora duwe apa-apa ing program. Nanging kaendahan iku supaya bisa terus-terusan sampeyan ora perlu kanggo nyimpen kabeh printah lan kemungkinan ing sirah. Sampeyan kudu ngerti sakumpulan prentah sing bakal mbantu sampeyan ngerti kabeh sing kedadeyan.

Dasar Git

Git minangka sistem kontrol versi sing disebarake kanggo kode kita. Yagene kita butuh? Tim sing disebarake mbutuhake sawetara sistem manajemen kerja. Perlu kanggo nglacak owah-owahan sing kedadeyan saka wektu. Yaiku, langkah demi langkah kita ndeleng file sing wis diganti lan kepiye carane. Iki penting banget nalika sampeyan nganalisa apa sing ditindakake sajrone siji tugas: iki ngidini sampeyan bali maneh. Ayo mbayangno kahanan: ana kode kerja, kabeh apik, nanging kita mutusake kanggo nambah, ngapiki ing kene, ngapiki ana. Kabeh apik, nanging dandan iki nyuwil setengah saka fungsi lan ora bisa digunakake. Dadi, apa sabanjure? Tanpa Gita, wong kudu njagong nganti pirang-pirang jam lan ngeling-eling kepiye asline. Dadi, kita mung bali menyang komit lan mung. Utawa apa yen ana rong pangembang sing nggawe owah-owahan kode ing wektu sing padha? Tanpa Git katon kaya iki: dheweke nyalin kode saka asline lan nindakake apa sing kudu ditindakake. Wayahe teka lan loro-lorone pengin nambah owah-owahan menyang folder utama. Lan apa sing kudu dilakoni ing kahanan iki?.. Aku malah ora wani ngira-ngira wektu kanggo nindakake karya iki. Ora bakal ana masalah kaya ngono yen sampeyan nggunakake Git.

Nginstal Git

Ayo nginstal Git ing komputer. Aku ngerti manawa saben wong duwe OS sing beda-beda, mula aku bakal nyoba nggambarake sawetara kasus.

Instalasi kanggo Windows

Kaya biasane, sampeyan kudu ndownload file exe lan mbukak. Kabeh iku prasaja ing kene: klik ing link Google pisanan , nginstal lan iku. Kanggo karya, kita bakal nggunakake konsol bash sing diwenehake. Kanggo nggarap Windows, sampeyan kudu mbukak Git Bash. Iki katon kaya ing menu wiwitan: Miwiti karo Git: pandhuan rinci kanggo pamula - 2Lan iki wis dadi konsol sing bisa digunakake. Supaya ora pindhah menyang folder karo proyek saben-saben mbukak git ana, sampeyan bisa klik-tengen ing folder kanggo mbukak console karo path kita kudu: Miwiti karo Git: pandhuan rinci kanggo pamula - 3

Instalasi kanggo Linux

Biasane git wis diinstal lan kalebu ing distribusi Linux, amarga iki minangka alat sing asline ditulis kanggo ngembangake kernel Linux. Nanging ana kahanan nalika ora ana. Kanggo mriksa iki, sampeyan kudu mbukak terminal lan ketik: git --version. Yen ana jawaban sing jelas, ora perlu nginstal apa-apa. Mbukak terminal lan nginstal. Aku kerja ing Ubuntu, supaya aku bisa ngandhani apa sing kudu ditulis: sudo apt-get install git. Lan iki: saiki sampeyan bisa nggunakake Git ing terminal apa wae.

Instalasi ing macOS

Ing kene uga, sampeyan kudu mriksa manawa Git wis ana (ndeleng ndhuwur, kaya ing Linux). Yen ora, cara paling gampang yaiku ndownload versi paling anyar. Yen XCode wis diinstal, banjur Git mesthi bakal diinstal kanthi otomatis.

Git persiyapan

Git nduweni setelan pangguna saka ngendi karya bakal ditindakake. Iki minangka perkara sing cukup lan perlu, amarga nalika komit digawe, Git njupuk persis informasi iki kanggo kolom Pengarang. Kanggo nyiyapake jeneng pangguna lan sandhi kanggo kabeh proyek, sampeyan kudu ngetik printah ing ngisor iki:

git config --global user.name ”Ivan Ivanov”
git config --global user.email ivan.ivanov@gmail.com
Yen ana perlu kanggo ngganti penulis kanggo proyek tartamtu (kanggo proyek pribadi, contone), sampeyan bisa mbusak --global, lan iki bakal bisa:

git config user.name ”Ivan Ivanov”
git config user.email ivan.ivanov@gmail.com

Teori cilik...

Kanggo tetep ing topik, disaranake nambah sawetara tembung lan tumindak anyar ing pesen sampeyan ... Yen ora, ora bakal ana sing bisa diomongake. Mesthi, iki sawetara jargon lan salinan basa Inggris, mula aku bakal nambah makna ing basa Inggris. Apa tembung lan tumindak?
  • git repositori;
  • tumêka (komit);
  • cabang;
  • nggabung;
  • konflik;
  • narik;
  • nyurung;
  • carane nglirwakake sawetara file (.gitignore).
Lan sateruse.

Negara ing Git

Gita nduweni sawetara kahanan sing kudu dimangerteni lan dieling-eling:
  • ora dilacak;
  • diowahi;
  • disiapake (dipentasake);
  • setya.

Iki artine apa?

Iki minangka negara ing ngendi file saka kode kita dumunung. Yaiku, dalan uripe biasane kaya mangkene:
  1. Berkas sing digawe lan ora ditambahake menyang repositori bakal ora dilacak.
  2. Kita nggawe owah-owahan menyang file sing wis ditambahake menyang gudang Git - lagi ana ing negara sing diowahi.
  3. Saka file sing wis diganti, kita milih mung sing (utawa kabeh) sing kita butuhake (contone, kita ora perlu kelas sing dikompilasi), lan kelas kasebut kanthi owah-owahan tiba ing negara sing dipentasake.
  4. Komit digawe saka file sing disiapake saka negara sing dipentasake lan mlebu ing repositori Git. Sawise iki, negara sing dipentasake kosong. Nanging sing diowahi bisa uga ana apa-apa.
Katon kaya iki (gambar saka dokumen resmi, supaya sampeyan bisa dipercaya)): Miwiti karo Git: pandhuan rinci kanggo pamula - 4

Apa komitmen

Komit minangka obyek utama ing kontrol versi. Isine kabeh owah-owahan wiwit komitmen kasebut. Komit disambungake siji liyane kaya dhaptar sing disambung. Yaiku: Ana komitmen pisanan. Nalika komit kapindho digawe, iku (kapindho) ngerti sing teka sawise pisanan. Lan kanthi cara iki sampeyan bisa nglacak informasi kasebut. Komit uga duwe informasi dhewe, sing diarani metadata:
  • pengenal komit unik sing sampeyan bisa nemokake;
  • jeneng pangarang commit sing nggawe;
  • nggawe tanggal nggawe;
  • komentar sing nggambarake apa sing ditindakake sajrone komitmen iki.
Iki katon kaya: Miwiti karo Git: pandhuan rinci kanggo pamula - 5

Apa iku cabang

Miwiti karo Git: pandhuan rinci kanggo pamula - 6Cabang minangka penunjuk kanggo komitmen. Wiwit komit ngerti komit sing sadurunge, nalika cabang nuduhake komitmen, kabeh sing sadurunge uga ngrujuk. Adhedhasar iki, kita bisa ujar manawa ana akeh cabang sing nuduhake komitmen sing padha. Pakaryan kedadeyan ing cabang, mula nalika komit anyar digawe, cabang kasebut mindhah pointer menyang komit sing luwih anyar.

Miwiti karo Git

Sampeyan mung bisa nggarap repositori lokal, utawa kanthi remot. Kanggo nindakake printah sing dibutuhake, sampeyan mung bisa nggunakake repositori lokal. Iku nyimpen kabeh informasi mung lokal ing project ing folder .git. Yen kita ngomong babagan remot, banjur kabeh informasi disimpen ing ngendi wae ing server remot: mung salinan proyek sing disimpen sacara lokal, owah-owahan sing bisa di-push (git push) menyang repositori remot. Ing kene lan sabanjure kita bakal ngrembug nggarap git ing konsol. Mesthi, sampeyan bisa nggunakake sawetara solusi grafis (contone, ing Intellij IDEA), nanging pisanan sampeyan kudu ngerti apa printah kedados lan apa tegese.

Nggarap Git ing repositori lokal

Sabanjure, aku saranake sampeyan tindakake kabeh langkah sing daklakoni nalika maca artikel kasebut. Iki bakal nambah pangerten lan penylametan materi. Dadi bon appetit :) Kanggo nggawe repositori lokal, sampeyan kudu nulis:

git init
Miwiti karo Git: pandhuan rinci kanggo pamula - 7Iki bakal nggawe folder .git ing lokasi ing ngendi console dumunung. .git minangka folder sing nyimpen kabeh informasi babagan gudang Git. Ora perlu mbusak;) Sabanjure, file ditambahake menyang proyek iki, lan statuse dadi Untracked. Kanggo ndeleng status kerja saiki, tulis:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 8Kita ana ing cabang master, lan nganti pindhah menyang liyane, kabeh bakal tetep kaya ngono. Kanthi cara iki sampeyan bisa ndeleng file endi sing wis diganti nanging durung ditambahake menyang status panggung. Kanggo nambah menyang negara sing dipentasake, sampeyan kudu nulis git add. Ana sawetara opsi ing kene, contone:
  • git add -A - nambah kabeh file saka negara pentas;
  • git nambah. - tambahake kabeh file saka folder iki lan kabeh sing internal. Ateges padha karo sing sadurunge;
  • git add <filename> - mung nambah file tartamtu. Ing kene sampeyan bisa nggunakake ekspresi reguler kanggo nambah miturut sawetara pola. Contone, git add *.java: iki tegese sampeyan mung kudu nambah file karo ekstensi java.
Cetha yen rong pilihan pisanan prasaja, nanging kanthi tambahan bakal luwih menarik, mula kita nulis:

git add *.txt
Kanggo mriksa status, kita nggunakake printah sing wis kita kenal:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 9Saka iki, kita bisa ndeleng manawa ekspresi reguler bisa digunakake kanthi bener, lan saiki test_resource.txt ana ing tahapan. Lan pungkasane, tahap pungkasan (kanthi repositori lokal, kanthi remot bakal ana siji maneh;)) - tundhuk lan nggawe komitmen anyar:

git commit -m “all txt files were added to the project”
Miwiti karo Git: pandhuan rinci kanggo pamula - 10Sabanjure, ana prentah sing apik kanggo ndeleng riwayat komitmen cabang. Ayo nganggo:

git log
Miwiti karo Git: pandhuan rinci kanggo pamula - 11Ing kene sampeyan wis bisa ndeleng manawa komitmen pisanan kita wis katon karo teks sing ditransfer. Penting banget kanggo mangerteni yen teks sing kita lewati kudu nemtokake kanthi akurat apa sing ditindakake sajrone komitmen iki. Iki bakal mbantu kaping pirang-pirang ing mangsa ngarep. Pembaca sing kepengin weruh sing durung turu bisa ngomong: apa sing kedadeyan karo file GitTest.java? Saiki kita bakal ngerti, gunakake iki:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 12Minangka kita bisa ndeleng, iku tetep ing negara untracked lan nunggu ing swiwi. Utawa Mungkin kita ora pengin nambah menyang project ing kabeh? Kadhangkala kedadeyan. Sabanjure, supaya luwih menarik, ayo nyoba ngganti file teks test_resource.txt. Ayo nambah sawetara teks ing kana lan mriksa status:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 13Ing kene sampeyan bisa ndeleng kanthi jelas bedane antarane rong negara kasebut - ora dilacak lan diowahi. GitTest.java ing negara untracked lan test_resource.txt ing negara dipunéwahi. Saiki wis ana file ing negara sing diowahi, kita bisa ndeleng owah-owahan sing wis ditindakake. Iki bisa ditindakake kanthi nggunakake printah:

git diff
Miwiti karo Git: pandhuan rinci kanggo pamula - 14Yaiku, sampeyan bisa ndeleng kanthi jelas ing kene yen aku nambahake hello world! menyang file teks kita. Tambah owahan menyang file teks lan laku:

git add test_resource.txt
git commit -m “added hello word! to test_resource.txt”
Kanggo ndeleng kabeh commit, tulis:

git log
Miwiti karo Git: pandhuan rinci kanggo pamula - 15Kaya sing sampeyan ngerteni, wis ana rong komitmen. Ing cara sing padha kita nambah GitTest.java. Saiki ora ana komentar, mung prentah:

git add GitTest.java
git commit -m “added GitTest.java”
git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 16

Nggarap .giignore

Cetha yen kita mung pengin nyimpen kode sumber lan ora ana liyane ing repositori. Apa maneh bisa dadi? Paling ora, kompilasi kelas lan/utawa file sing nggawe lingkungan pangembangan. Supaya Git ora nglirwakake, ana file khusus sing kudu digawe. Kita nindakake iki: kita nggawe file ing ROOT saka project disebut .gitignore, lan ing berkas iki saben baris bakal pola kanggo nglirwakake. Ing conto iki, git ignore bakal katon kaya iki:

```
*.class
target/
*.iml
.idea/
```
Ayo katon saiki:
  • baris pisanan kanggo nglirwakake kabeh file karo extension .class;
  • baris kapindho kanggo nglirwakake folder target lan kabeh isine;
  • baris katelu kanggo nglirwakake kabeh file karo extension .iml;
  • Baris kaping papat kanggo nglirwakake folder .idea.
Ayo coba nganggo conto. Kanggo ndeleng cara kerjane, tambahake kelas GitTest.class sing dikompilasi menyang proyek lan deleng status proyek:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 17Cetha, kita ora pengin sengaja (yen kita nggunakake git add -A) nambah kelas sing dikompilasi menyang proyek kasebut. Kanggo nindakake iki, gawe file .gitignore lan tambahake kabeh sing diterangake sadurunge: Miwiti karo Git: pandhuan rinci kanggo pamula - 18Saiki ayo nambah git nglirwakake proyek kasebut kanthi komitmen anyar:

git add .gitignore
git commit -m “added .gitignore file”
Lan saiki wayahe bebener: kita duwe kelas GitTest.class sing dikompilasi ing negara sing ora dilacak, sing ora pengin ditambahake menyang gudang Git. Iki ngendi git ignore kudu bisa digunakake:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 19Kabeh wis jelas) Git abaikan +1)

Nggarap cabang lan liya-liyane

Mesthine, nggarap siji cabang ora trep kanggo siji lan mokal yen ana luwih saka siji wong ing tim. Ana cabang kanggo iki. Kaya sing dakkandhakake sadurunge, cabang mung minangka penunjuk sing bisa ditindakake. Ing bagean iki, kita bakal nliti kerja ing macem-macem cabang: carane nggabungake owah-owahan saka siji cabang menyang cabang liyane, konflik apa sing bisa kedadeyan, lan liya-liyane. Kanggo ndeleng dhaptar kabeh cabang ing repositori lan ngerti sing sampeyan lagi aktif, sampeyan kudu nulis:

git branch -a
Miwiti karo Git: pandhuan rinci kanggo pamula - 20Sampeyan bisa ndeleng sing kita mung duwe siji cabang master, lan tanda bintang ing ngarepe ngandika sing kita ana ing. Ngomong-ngomong, kanggo ngerteni cabang sing ana, kita uga bisa nggunakake mriksa status (status git). Sabanjure, ana sawetara opsi kanggo nggawe cabang (bisa uga ana liyane, aku nggunakake iki):
  • nggawe cabang anyar adhedhasar sing kita ana ing (99% kasus);
  • nggawe cabang adhedhasar komitmen tartamtu (1%).

Nggawe cabang adhedhasar komitmen tartamtu

Kita bakal ngandelake pengenal komit unik. Kanggo nemokake, kita nulis:

git log
Miwiti karo Git: pandhuan rinci kanggo pamula - 21Aku nyorot komitmen kasebut kanthi komentar "ditambahake hello world ...". Nduwe pengenal unik - "6c44e53d06228f888f2f454d3cb8c1c976dd73f8". Aku pengin nggawe cabang pangembangan wiwit saka komitmen iki. Kanggo iki aku bakal nulis:

git checkout -b development 6c44e53d06228f888f2f454d3cb8c1c976dd73f8
Cabang digawe sing mung ngemot loro komit pisanan saka cabang master. Kanggo nyoba iki, kita bakal priksa manawa kita wis pindhah menyang cabang liyane lan ndeleng jumlah komitmen kasebut:

git status
git log
Miwiti karo Git: pandhuan rinci kanggo pamula - 22Lan iku bener: ternyata kita duwe loro komitmen. Miturut cara, titik menarik: durung ana file .gitignore ing cabang iki, supaya file kita kompilasi (GitTest.class) saiki disorot ing negara untracked. Saiki kita bisa mbenakake cabang maneh kanthi nulis:

git branch -a
Miwiti karo Git: pandhuan rinci kanggo pamula - 23Bisa dideleng manawa ana rong cabang - master lan pangembangan - lan saiki lagi ana ing pembangunan.

Nggawe cabang adhedhasar sing saiki

Cara liya kanggo nggawe cabang yaiku mbangun ing liyane. Aku pengin nggawe cabang adhedhasar cabang master, mula aku kudu ngalih dhisik, lan langkah sabanjure yaiku nggawe sing anyar. Ayo katon:
  • git checkout master - pindhah menyang cabang master;
  • git status - priksa manawa ana ing master.
Miwiti karo Git: pandhuan rinci kanggo pamula - 24Ing kene sampeyan bisa ndeleng manawa kita wis pindhah menyang cabang master, git ignore wis digunakake ing kene, lan kelas sing dikompilasi ora katon maneh minangka untracked. Saiki kita nggawe cabang anyar adhedhasar cabang master:

git checkout -b feature/update-txt-files
Miwiti karo Git: pandhuan rinci kanggo pamula - 25Yen sampeyan duwe keraguan manawa cabang iki ora bakal padha karo master, sampeyan bisa kanthi gampang mriksa iki kanthi nulis git log lan ndeleng kabeh commit. Mesthine ana papat.

Rampungake konflik

Saderengipun kita mangertosi menapa ingkang dipunsebat konflik, prelu dipunrembag ngengingi (menggabungkan) cabang ingkang setunggal kaliyan cabang sanesipun. Gambar iki bisa nuduhake proses nalika siji cabang digabung menyang liyane: Miwiti karo Git: pandhuan rinci kanggo pamula - 26Yaiku, ana cabang utama. Ing sawetara titik, sing sekunder digawe saka iku, kang ana owah-owahan. Sawise karya rampung, sampeyan kudu nggabungake siji cabang menyang liyane. Aku ora bakal njlèntrèhaké macem-macem fitur: Aku arep kanggo ngirim mung pangerten ing framework saka artikel iki, lan sampeyan bakal nemokake rincian dhewe yen perlu. Dadi, ing conto kita, kita nggawe cabang fitur/update-txt-files. Kaya sing ditulis ing jeneng cabang, kita bakal nganyari teks kasebut. Miwiti karo Git: pandhuan rinci kanggo pamula - 27Saiki sampeyan kudu nggawe komitmen anyar kanggo perkara iki:

git add *.txt 
git commit -m “updated txt files”
git log
Miwiti karo Git: pandhuan rinci kanggo pamula - 28Saiki, yen kita pengin nggabungake cabang fitur/update-txt-files dadi master, kita kudu pindhah menyang master lan nulis git merge feature/update-txt-files:

git checkout master
git merge feature/update-txt-files
git log
Miwiti karo Git: pandhuan rinci kanggo pamula - 29Akibaté, saiki cabang master uga duwe komitmen sing ditambahake menyang fitur/update-txt-files. Fungsi iki ditambahake supaya sampeyan bisa mbusak cabang fitur. Kanggo nindakake iki, kita nulis:

git branch -D feature/update-txt-files
Nganti saiki wis jelas, ta? Ayo dadi rumit kahanan: saiki ayo ngomong yen kita kudu ngganti file txt maneh. Nanging saiki file iki uga bakal diganti ing tuntunan. Yaiku, bakal diganti kanthi paralel, lan Git ora bakal bisa ngerti apa sing kudu ditindakake ing kahanan nalika kita pengin nggabungake kode anyar menyang cabang master. Tindak! Kita nggawe cabang anyar adhedhasar master, nggawe owahan kanggo text_resource.txt lan nggawe komitmen kanggo prakara iki:

git checkout -b feature/add-header
... делаем изменения в файле
Miwiti karo Git: pandhuan rinci kanggo pamula - 30

git add *.txt
git commit -m “added header to txt”
Miwiti karo Git: pandhuan rinci kanggo pamula - 31Pindhah menyang cabang master lan uga nganyari file teks iki ing baris sing padha karo cabang fitur:

git checkout master
… обновor test_resource.txt
Miwiti karo Git: pandhuan rinci kanggo pamula - 32

git add test_resource.txt
git commit -m “added master header to txt”
Lan saiki wayahe sing paling menarik: sampeyan kudu nggabungake owah-owahan saka cabang fitur / add-header kanggo master. Kita ana ing cabang master, mula kita mung kudu nulis:

git merge feature/add-header
Nanging kita bakal entuk asil karo konflik ing file test_resource.txt: Miwiti karo Git: pandhuan rinci kanggo pamula - 33Lan ing kene kita bisa ndeleng manawa Git ora bisa mutusake kanthi mandiri carane nggabungake kode iki lan ujar manawa kita kudu ngrampungake konflik kasebut, lan banjur nggawe komitmen. Ok, ayo mbukak file sing ngemot konflik ing editor teks lan deleng: Miwiti karo Git: pandhuan rinci kanggo pamula - 34Kanggo ngerti apa sing ditindakake git ing kene, sampeyan kudu ngelingi apa sing ditulis ing ngendi lan mbandhingake:
  1. antarane "<<<<<<<< HEAD" lan "=======" iku owah-owahan master sing ana ing baris iki ing cabang master.
  2. antarane "=======" lan ">>>>>>> fitur / add-header" ana owah-owahan sing ana ing cabang fitur / add-header.
Mangkono, Git nuduhake yen ing wektu iki dheweke ora bisa ngerteni carane nggabungake file iki, dibagi dadi rong bagean saka cabang sing beda-beda lan menehi saran supaya kita mutusake dhewe. Oke, kanthi tekad sing kuat aku mutusake mbusak kabeh, mung ninggalake header tembung: Miwiti karo Git: pandhuan rinci kanggo pamula - 35Ayo ndeleng status owah-owahan, katrangan bakal rada beda. Ora bakal ana negara sing diowahi, nanging Unmerged. Supaya kita bisa kanthi aman nambah negara kalima ... Nanging aku iki ora perlu, ayo kang ndeleng:

git status
Miwiti karo Git: pandhuan rinci kanggo pamula - 36Kita padha yakin sing iki beda, kasus mboten umum. Ayo nerusake:

git add *.txt
Miwiti karo Git: pandhuan rinci kanggo pamula - 37Ing katrangan sampeyan bakal weruh yen dheweke mung menehi saran nulis git commit. Kita ngrungokake lan nulis:

git commit
Miwiti karo Git: pandhuan rinci kanggo pamula - 38Lan kabeh iki: kaya ngono - kita ngrampungake konflik ing konsol. Mesthine, ing lingkungan pangembangan sampeyan bisa nindakake iki luwih gampang, contone, ing Intellij IDEA kabeh wis diatur kanthi apik supaya sampeyan bisa nindakake kabeh tumindak sing dibutuhake. Nanging lingkungan pangembangan nindakake akeh perkara, lan kita asring ora ngerti apa sing kedadeyan ing kana. Lan nalika ora ana pangerten, banjur masalah bisa muncul.

Nggarap repositori remot

Langkah pungkasan yaiku ngerteni sawetara prentah liyane sing dibutuhake kanggo nggarap repositori remot. Kaya sing wis dakkandhakake, repositori remot yaiku sawetara papan ing ngendi repositori disimpen lan saka ngendi sampeyan bisa clone. Apa jinis repositori remot sing ana? Ana akeh conto:
  • GitHub minangka repositori paling gedhe kanggo repositori lan pangembangan kolaboratif. Aku wis nerangake ing artikel sadurunge.
    Langganan akun Githubku . Aku kerep mamerake karyaku ana ing wilayah sing aku sinau nalika kerja.

  • GitLab minangka alat siklus urip DevOps berbasis web sumber terbuka sing nyedhiyakake sistem manajemen repositori kode kanggo Git kanthi wiki dhewe, sistem pelacakan masalah , pipa CI/CD lan fitur liyane.
    Sawise kabar yen Microsoft tuku GitHub, sawetara pangembang nggawe duplikat karya ing GitLab.

  • BitBucket minangka layanan web kanggo hosting proyek lan pangembangan kolaboratif, adhedhasar sistem kontrol versi Mercurial lan Git. Ing sawijining wektu, ana kauntungan gedhe tinimbang GitHub amarga duwe repositori pribadi gratis. Taun kepungkur, GitHub uga nggawe fitur iki kasedhiya kanggo kabeh wong kanthi gratis.

  • Lan sakteruse…

Babagan pisanan sing kudu ditindakake nalika nggarap repositori remot yaiku kloning proyek kasebut menyang lokal sampeyan. Kanggo kasus iki, aku ngekspor proyek sing digawe sacara lokal, lan saiki kabeh wong bisa nggawe kloning kanthi nulis:
git clone https://github.com/romankh3/git-demo
Saiki ana salinan lengkap proyek kasebut sacara lokal. Kanggo mesthekake yen salinan paling anyar saka proyek kasebut dumunung ing lokal, sampeyan kudu, kaya sing dikandhakake, mbucal data kanthi nulis:

git pull
Miwiti karo Git: pandhuan rinci kanggo pamula - 39Ing kasus kita, ora ana sing owah saka adoh, mula jawabane: Wis nganti saiki. Nanging yen aku nggawe sawetara owah-owahan ing repositori remot, lokal bakal dianyari sawise kita narik wong. Lan pungkasane, perintah pungkasan yaiku push data menyang repositori remot. Yen wis rampung sacara lokal lan pengin nransfer menyang repositori remot, kita kudu nggawe komitmen anyar kanthi lokal. Kanggo nindakake iki, ayo nambah liyane menyang file teks: Miwiti karo Git: pandhuan rinci kanggo pamula - 40Saiki iku umum kanggo kita - kita nggawe komitmen kanggo perkara iki:

git add test_resource.txt
git commit -m “prepated txt for pushing”
Lan saiki prentah kanggo push iki menyang repositori remot:

git push
Miwiti karo Git: pandhuan rinci kanggo pamula - 41Mung kuwi sing dakkarepake marang kowe. Matur nuwun kawigatosanipun. Langganan akun GitHub , ing ngendi aku ngirim proyek conto sing beda-beda saka apa sing daksinaoni lan digunakake ing karya.

pranala migunani

Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION