Керектүү кириш эскертүүлөр:
- git жөнүндө макаланы окуңуз, кайталаңыз жана түшүнүңүз . Бул баары мурунтан эле орнотулган жана барууга даяр экенин камсыз кылууга жардам берет.
- Intellij IDEA орнотуу.
- Толук сиңирүү үчүн бир саат жеке убакыт бөлүңүз.
Долбоорду жергorктүү клондоштуруу
Бул жерде эки вариант бар.- Эгер сизде Github аккаунту бар болсо жана кийинчерээк бир нерсени түртүүнү кааласаңыз, долбоорду өзүңүзгө бөлүп, көчүрмөңүздү клондоңуз. Кантип айры жасоо керек - Мен бул макалада бөлүмдө айрылардын иштөө процессинин мисалын сүрөттөп бердим .
- Менин репозиторийден клондоштуруу жана бардыгын serverге түртө албай туруп, бардыгын жергorктүү түрдө аткарыңыз. Кантсе да бул менин репозиторийим болот))
-
Долбоордун дарегин көчүрүү:
-
Intellij IDEA ачып, Версияны башкаруудан алуу тандаңыз:
-
Долбоордун дарегин көчүрүп, чаптаңыз:
-
Сизден Intellij IDEA долбоорун түзүү сунушталат. Биз сунушту кабыл алабыз:
-
Эч кандай куруу системасы жок болгондуктан жана бул макаланын көлөмү эмес, бар болгон булактардан долбоор түзүү тандаңыз :
-
Андан кийин төмөнкүдөй майлуу боёк болот: Биз клондоштурууну иргедик, эми айланабызды карай алабыз.
Алгач Intellij IDEAга Git UI катары караңыз
Клондолгон долбоорду дагы бир кылдаттык менен карап көрүңүз: ал жерден сиз versionны башкаруу системасы жөнүндө көп маалымат ала аласыз. Биринчиси, төмөнкү сол бурчтагы Версияны башкаруу панели. Анда сиз бардык жергorктүү өзгөртүүлөрдү таба аласыз жана милдеттенмелердин тизмесин ала аласыз (git log менен окшош). Келгиле, Log лекциясына өтөбүз . Өнүгүү процесси кантип өткөнүн так түшүнүүгө жардам берген белгилүү бир визуалдык компонент бар. Мисалы, сиз жаңы бутак түзүлгөнүн көрө аласыз txt дегенге кошумча баш ат менен , андан кийин башкы бутакка бириктирилген. Эгерде сиз милдеттенмени чыкылдатсаңыз, оң бурчта сиз милдеттенме жөнүндө бардык маалыматты көрө аласыз: бардык өзгөртүүлөр жана анын метадайындары. Мындан тышкары, кандай өзгөртүүлөр киргизилгенин көрө аласыз. Анын үстүнө чыр ошол жерде чечилген. IDEA да муну эң сонун көрсөтөт. Эгерде сиз бул ишке ашыруу учурунда өзгөртүлгөн файлды эки жолу чыкылдатсаңыз, биз чыр-чатактын кантип чечилгенин көрөбүз: Оң жана сол жакта бир эле файлдын эки versionсы бар экени байкалып турат, аларды бир файлга бириктирүү керек. Ал эми ортодо акыркы жыйынтык болот. Долбоордун көптөгөн бутактары, милдеттенмелери жана долбоордо иштеген колдонуучулары болгондо, сиз фorал (фorал), колдонуучу (колдонуучу) жана датасы (датасы) боюнча өзүнчө издөө керек: Жана баштаардан мурун түшүндүргүм келген акыркы нерсе - бул кантип түшүнүү. биз кайсы фorалдабыз. Мен сага издөө үчүн бир мүнөт убакыт берем... таптыңбы? Сиз баш тартып жатасызбы? :D Төмөнкү оң бурчта Git: мастер баскычы бар , анда Gitтен кийин: долбоор учурда кайсы тармакта экенин көрсөтөт. Баскычты бассаңыз, сиз көп пайдалуу нерселерди жасай аласыз: башка фorалга өтүү, жаңысын түзүү, бар болгонунун атын өзгөртүү жана башкалар.Репозиторий менен иштөө
Пайдалуу ысык баскычтар
Ишти улантуу үчүн, бир нече абдан пайдалуу ысык баскычтарды эстеп калуу керек:- ctrl + t - алыскы репозиторийден акыркы өзгөртүүлөрдү алуу (git pull).
- ctrl + k - учурда жеткorктүү болгон бардык өзгөртүүлөрдү киргизүү/көрүү. Буга көзөмөлдөнбөгөн да, өзгөртүлгөн файлдар да кирет (git жөнүндө менин макаламды караңыз, бул жерде сүрөттөлөт) (git commit).
- ctrl + shift + k - алыскы репозиторийге өзгөртүүлөрдү түртүүчү буйрук. Локалдуу түрдө түзүлгөн жана алыскы башкарууда боло элек бардык милдеттенмелер push (git push) үчүн сунушталат.
- alt + ctrl + z - белгилүү бир файлдагы өзгөрүүлөрдү жергorктүү репозиторийдеги акыркы түзүлгөн милдеттенменин абалына кайтаруу. Жогорку сол бурчта бүтүндөй долбоорду тандасаңыз, бардык файлдарга өзгөртүүлөрдү артка кайтара аласыз.
Биз эмнени каалайбыз?
Иштеш үчүн биз бардык жерде колдонулган негизги сценарийди өздөштүрүшүбүз керек. Милдет - өзүнчө бутакта жаңы функцияларды ишке ашыруу жана аны алыскы репозиторийге түртүү (андан кийин сиз негизги бутак үчүн дагы бир тартуу өтүнүчүн түзүшүңүз керек, бирок бул биздин макаланын алкагынан тышкары). Мен эмне кылышым керек?-
Учурдагы негизги бутактагы бардык өзгөртүүлөрдү алыңыз (мисалы, мастер).
-
Ушул негизгиге таянып, жумушуңуз үчүн өзүнчө түзүңүз.
-
Жаңы функцияны ишке ашыруу.
-
Негизги бутакка барып, иштеп жатканыңызда кандайдыр бир жаңы өзгөрүүлөр болгон-болбогонун текшериңиз. Эгер андай эмес болсо, анда баары жакшы, эгер болгон болсо, анда биз төмөнкүлөрдү жасайбыз: биз жумушчу бутакка барып, негизги бутактан биздикиге өзгөртүүнү кайра негиздейбиз. Эгер баары жакшы болсо, анда сонун. Бирок чыр-чатактар болушу мүмкүн. Ал эми аларды алыскы репозиторийде убакытты текке кетирбестен алдын ала чечсе болот.
Көрсө, эмне үчүн муну кыласың? Бул сиздин фorалыңызды жергorктүү репозиторийге түрткөндөн кийин конфликттердин келип чыгышына жол бербөөчү жакшы формадагы эреже (албетте, алар дагы деле бар болуу ыктымалдыгы бар, бирок ал бир топ азыраак болуп калат).
- Өзгөртүүлөрүңүздү алыскы репозиторийге түртүңүз.
Алыскы serverден өзгөрүүлөрдү аласызбы?
Мен жаңы милдеттенме менен README сүрөттөмөсүн коштум жана бул өзгөртүүлөрдү алгым келет. Жергorктүү жана алыскы репозиторийлерде өзгөртүүлөр киргизилсе, бириктирүү жана кайра түзүү ортосунда тандоо сунушталат. Бириктирүүнү тандаңыз. ctrl + t киргизиңиз : Натыйжада, сиз README кандайча өзгөргөнүн көрө аласыз, б.а. алыскы репозиторийден өзгөртүүлөр чыгарылды жана төмөнкү оң бурчта serverден келген өзгөртүүлөрдүн бардык чоо-жайын көрө аласыз.Кожоюндун негизинде жаңы фorал түзүңүз
Бул жерде баары жөнөкөй.-
Төмөнкү оң бурчка барып, Git: мастерди басыңыз , + Жаңы фorалды тандаңыз .
Checkout фorалынын кутучасын калтырып , жаңы фorалдын атын жазыңыз. Мен үчүн бул мени жакшыртуучу болмок .
Андан кийин Git: мастер Git: readme-improver болуп өзгөрөт .
Параллелдүү иштөө
Конфликттер пайда болушу үчүн, кимдир бирөө аларды түзүшү керек :D Мен READMEди браузер аркылуу жаңы милдеттеме менен түзөтөм жана ошону менен параллелдүү ишти симуляция кылам. Алардын айтымында, кимдир-бирөө менин жумушумда мен сыяктуу эле файлга өзгөртүү киргизип, чыр-чатакка алып келет. 10-саптан “толугу менен” деген сөздү алып салам.Функцияңызды ишке ашырыңыз
Милдет READMEди өзгөртүү жана жаңы макалага сүрөттөмө кошуу, башкача айтканда, гиттеги иш Intellij IDEA аркылуу аткарылат. Муну кошуңуз: Өзгөртүүлөр аяктады, эми сиз милдеттенме түзө аласыз. Ыкчам баскычты басыңыз ctrl + k , биз алабыз: Commit түзүүдөн мурун, бул терезеде эмне сунушталып жатканын кылдаттык менен карап чыгышыңыз керек. Кайдан издеш керек экенин көрсөтүү үчүн атайын жебени коштум. Ал жерде көптөгөн кызыктуу нерселер бар. "Commit Message" бөлүмүндө биз милдеттенменин текстин жазабыз жана аны түзүү үчүн " Commit" баскычын басышыңыз керек . Мен муну ысык баскыч менен кантип жасоону дагы деле таба элекмин, андыктан кимдир бирөө аны тапса, жаз, мен абдан бактылуу болом. Биз README өзгөргөнүн жазып, милдеттенме түзөбүз. Натыйжада, төмөнкү сол бурчта тапшырманын аталышы менен эскертүү пайда болот:Башкы бутак өзгөргөнүн текшериңиз
Биз тапшырманы аткардык, иштейт, тесттерди жаздык, баары жакшы. Бирок serverге түртүүдөн мурун, бул убакыттын ичинде негизги бутакта кандайдыр бир өзгөрүүлөр болгон-болбогонун текшерүү керек. Бул кантип болушу мүмкүн? Бул абдан жөнөкөй: кимдир бирөө сизден кийин тапшырма берди, ал эми бул кимдир бирөө аны сизден тезирээк аткарды. Ошондуктан, биз мастер фorалга өтөбүз. Бул үчүн, төмөнкү оң бурчта төмөндөгү сүрөттө көрсөтүлгөн нерсени кылышыңыз керек: Мастер бутакта, алыскы serverден анын акыркы өзгөртүүлөрүн алуу үчүн ctrl + t баскычтарын басыңыз. Кандай өзгөртүүлөр киргизилгенин карасаңыз, эмне болгонун оңой эле байкай аласыз: Көрүнүп тургандай, "толугу менен" деген сөз алынып салынган. Балким, маркетингден бирөө аны минтип жазууга болбойт деп чечип, иштеп чыгуучуларга аны жаңыртуу тапшырмасын бергендир. Бизде азыр жергorктүү башкы фorалдын акыркы versionсы бар. Келгиле, Readme-Improver дегенге кайрылалы . Эми биз негизги бутактан өзүбүзгө өзгөртүүлөрдү кайра негиздешибиз керек. Биз жасайбыз: Эгер сиз мени менен бардыгын туура аткарган болсоңуз, натыйжада README файлында конфликт пайда болушу керек: Бул жерде дагы түшүнүү жана сиңирүү керек болгон көптөгөн маалымат бар. Бул карама-каршылыктары бар файлдардын тизмесин (биздин учурда бир элементте) көрсөтөт. Биз үч вариантты тандай алабыз:- сиздики кабыл алыңыз - readme-improverден гана өзгөртүүлөрдү кабыл алыңыз.
- аларды кабыл алуу - кожоюндан гана өзгөртүүлөрдү кабыл алуу.
- бириктирүү - эмнени сактап, эмнени алып салууну өзүңүз тандаңыз.
- Бул Readme-Improver'ден өзгөртүүлөр.
- Жыйынтык. Азырынча өзгөрүүлөргө чейин кандай болсо, ошондой.
- Мастер бутагынан өзгөрүүлөр.
Өзгөртүүлөрдү алыскы serverге түртүңүз
Кийинки кадам өзгөртүүлөрдү алыскы serverге түртүп, тартуу өтүнүчүн түзүү болуп саналат. Бул үчүн, жөн гана басыңыз ctrl + shift + k , андан кийин биз алабыз: Сол жакта алыскы репозиторийге өткөрүлбөгөн тапшырмалардын тизмеси, ал эми оң жакта бардык файлдар болот. өзгөрдү. Болгону: Push баскычын чыкылдатыңыз , ошондо сиз бактылуу болосуз :) Эгерде түртүү ийгorктүү болсо, төмөнкү оң бурчта төмөнкүдөй билдирүү пайда болот:Бонус бөлүгү
Мен башында макалага тартуу өтүнүчүн түзүүнү кошкум келген жок, бирок ушундан улам ал толук эмес болуп чыкты. Ошондуктан, биз GitHub репозиторийине барабыз (эгер ал сеники болсо)))) жана GitHub бизге эмне сунуш кыларын мурунтан эле бorп турганын көрөбүз: Салыштыруу жана суроо-талапты чыкылдатыңыз , андан кийин Тартуу өтүнүчүн түзүү . Биз чыр-чатактарды алдын ала чечкендиктен, азыр тартуу өтүнүчүн түзүп жатканда, сиз аны дароо бириктире аласыз: Мен бул жолу сага айткым келди. Албетте, мен жаңы эле эшикти ачып, кичинекей бөлүгүн көрсөттүм. Калганын керек болсо өзүң табасың. Адаттагыдай эле, мен сизди GitHub аккаунтума жазылууга чакырам , анда мен жумушта колдонгон ар кандай технологиялардын негизинде долбоорлорду жарыялайм. Мен жакында эле жеке жетишкендикке ээ болдум - менин долбоорум буга чейин жүздөн ашуун иштеп чыгуучулар тарабынан бааланган. Кимдир бирөө сиз жасаган нерсени колдонуп жатканы укмуштуудай кубаныч сезими. Жана аны жакшылыкка колдонот.пайдалуу шилтемелер
- JavaRush: Git менен баштоо: үйрөнчүктөр үчүн толук жол
- GitHub: Демо долбоор менен иштөө
- JavaRush: Гитте тармакташуу стратегияларын талдоо
- JetBrains: Git репозиторийсин орнотуңуз
- Habr: Git rebase
- GitHub: Менин аккаунтум
GO TO FULL VERSION