CodeGym /Java Blog /यादृच्छिक /स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA
John Squirrels
पातळी 41
San Francisco

स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA

यादृच्छिक या ग्रुपमध्ये प्रकाशित केले
प्रस्थापित परंपरेला चिकटून, भावी वरिष्ठ सॉफ्टवेअर अभियंता म्हणून मी तुम्हाला सलाम करतो. स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 1आजचा लेख हा माझ्या Git वरील लेखाचा तार्किक विस्तार आहे . Git बद्दलच्या लेखात, मी कमांड लाइनवर Git सह कसे कार्य करावे याचे वर्णन केले आहे. आज मी तुम्हाला हे सर्व IntelliJ IDEA मध्ये कसे करायचे ते दाखवणार आहे. विकासक म्हणून माझ्या प्रवासाच्या सुरुवातीला, मी कमांड लाइन वापरली आणि मला यासाठी GUI ची गरज नाही असे वाटले. शेवटी, सर्वकाही जसे होते तसे स्पष्ट होते... पण जेव्हा मी IntelliJ IDEA मध्ये Git वापरण्यास सुरुवात केली तेव्हापर्यंत हेच होते... सुरवातीपासूनच, मला असे म्हणायचे आहे की मी माझ्या वैयक्तिक अनुभवाचे वर्णन करत आहे. IntelliJ IDEA मध्ये कोणतीही समस्या सोडवण्याचे अनेक मार्ग आहेत. मी लेखात जे वर्णन करेन त्यापेक्षा तुम्हाला एक चांगला मार्ग माहित असल्यास, टिप्पण्यांमध्ये लिहा आणि आम्ही त्यावर चर्चा करू.

आवश्यक इनपुट:

  1. Git बद्दलचा माझा लेख वाचा, त्याचे अनुसरण करा आणि समजून घ्या . हे सर्व काही सेट केले आहे आणि जाण्यासाठी तयार आहे याची खात्री करण्यात मदत करेल.
  2. IntelliJ IDEA स्थापित करा.
  3. पूर्ण प्रभुत्व मिळविण्यासाठी एक तास वैयक्तिक वेळ द्या.
मी Git बद्दलच्या लेखासाठी वापरलेल्या डेमो प्रोजेक्टसह काम करूया .अपडेट:प्रकाशनाच्या वेळी, नवीन GitHub UI उपलब्ध असेल आणि काही चिन्हे लेखात दर्शविल्या जातील तेथे नसतील. घाबरू नका: तुम्हाला एकतर नवीन UI वर स्विच न करण्याची किंवा त्यांना शोधण्याची आवश्यकता आहे.

स्थानिक पातळीवर प्रकल्प क्लोन करा

येथे दोन पर्याय आहेत:
  1. तुमच्याकडे आधीपासून गिटहब खाते असल्यास आणि नंतर काहीतरी पुश करायचे असल्यास, प्रोजेक्ट फोर्क करणे आणि स्वतःची कॉपी क्लोन करणे चांगले.
  2. माझे रेपॉजिटरी क्लोन करा आणि सर्व काही सर्व्हरवर ढकलण्याच्या क्षमतेशिवाय स्थानिक पातळीवर करा. शेवटी, हे माझे भांडार आहे :)
GitHub वरून प्रोजेक्ट क्लोन करण्यासाठी, तुम्हाला प्रोजेक्ट लिंक कॉपी करून IntelliJ IDEA ला पास करणे आवश्यक आहे:
  1. प्रकल्प पत्ता कॉपी करा:

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 2
  2. IntelliJ IDEA उघडा आणि "आवृत्ती नियंत्रणातून मिळवा" निवडा:

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 3
  3. प्रकल्प पत्ता कॉपी आणि पेस्ट करा:

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 4
  4. तुम्हाला IntelliJ IDEA प्रकल्प तयार करण्यास सांगितले जाईल. ऑफर स्वीकारा:

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 5
  5. कोणतीही बिल्ड सिस्टम नसल्यामुळे आणि ते या लेखाच्या व्याप्तीच्या पलीकडे असल्याने, आम्ही विद्यमान स्त्रोतांमधून प्रकल्प तयार करा निवडतो :

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 6
  6. पुढे तुम्हाला ही सुंदर स्क्रीन दिसेल: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 7आता आम्ही क्लोनिंग शोधले आहे, तुम्ही आजूबाजूला एक नजर टाकू शकता.

Git UI म्हणून IntelliJ IDEA वर प्रथम दृष्टीक्षेप

क्लोन केलेल्या प्रकल्पावर बारकाईने नजर टाका: आपण आधीपासूनच आवृत्ती नियंत्रण प्रणालीबद्दल बरीच माहिती मिळवू शकता. प्रथम, आमच्याकडे खालच्या डाव्या कोपर्यात आवृत्ती नियंत्रण उपखंड आहे. येथे तुम्ही सर्व स्थानिक बदल शोधू शकता आणि कमिटची यादी मिळवू शकता ("गिट लॉग" प्रमाणे). चला लॉगच्या चर्चेकडे वळू . एक विशिष्ट व्हिज्युअलायझेशन आहे जे आपल्याला विकास नेमका कसा झाला हे समजण्यास मदत करते. उदाहरणार्थ, तुम्ही पाहू शकता की txt कमिटमध्ये जोडलेल्या हेडरसह नवीन शाखा तयार केली गेली होती , जी नंतर मास्टर शाखेत विलीन झाली होती. तुम्ही कमिटवर क्लिक केल्यास, तुम्ही कमिटबद्दलची सर्व माहिती उजव्या कोपर्यात पाहू शकता: त्यातील सर्व बदल आणि मेटाडेटा.स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 8शिवाय, आपण वास्तविक बदल पाहू शकता. तेथे संघर्ष मिटल्याचेही आपण पाहतो. IDEA देखील हे खूप चांगले सादर करते. या कमिट दरम्यान बदललेल्या फाईलवर तुम्ही डबल-क्लिक केल्यास, संघर्ष कसा सोडवला गेला ते आम्ही पाहू: आम्ही स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 9लक्षात घेतो की डावीकडे आणि उजवीकडे आमच्याकडे एकाच फाईलच्या दोन आवृत्त्या आहेत ज्या एकामध्ये विलीन करणे आवश्यक आहे. आणि मध्यभागी, आमच्याकडे अंतिम विलीन परिणाम आहे. जेव्हा प्रोजेक्टमध्ये अनेक शाखा, कमिट आणि वापरकर्ते असतात, तेव्हा तुम्हाला शाखा, वापरकर्ता आणि तारखेनुसार स्वतंत्रपणे शोधण्याची आवश्यकता असते: आम्ही स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 10सुरू करण्यापूर्वी शेवटची गोष्ट मला समजावून सांगायची आहे की आम्ही कोणत्या शाखेत आहोत हे कसे समजून घ्यावे. मी तुम्हाला देईन. ते शोधण्यासाठी एक मिनिट... तुम्हाला ते सापडले का? सोडून देऊ? :D खालच्या उजव्या कोपर्‍यात, Git: master असे लेबल असलेले बटण आहे. "गिट:" चे अनुसरण करणारी कोणतीही वर्तमान शाखा आहे. तुम्ही बटणावर क्लिक केल्यास, तुम्ही अनेक उपयुक्त गोष्टी करू शकता: दुसर्‍या शाखेत जा, नवीन शाखा तयार करा, अस्तित्वात असलेल्या शाखेचे नाव बदला इ.स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 11

रेपॉजिटरीसह कार्य करणे

उपयुक्त हॉटकीज

भविष्यातील कार्यासाठी, आपल्याला काही अतिशय उपयुक्त हॉटकी लक्षात ठेवण्याची आवश्यकता आहे:
  1. CTRL+T - रिमोट रिपॉझिटरी (गिट पुल) मधून नवीनतम बदल मिळवा.
  2. CTRL+K - एक कमिट तयार करा / सध्याचे सर्व बदल पहा. यात ट्रॅक न केलेल्या आणि सुधारित फायली दोन्ही समाविष्ट आहेत (गिट बद्दल माझा लेख पहा, जे हे स्पष्ट करते) (गिट कमिट).
  3. CTRL+SHIFT+K — रिमोट रिपॉझिटरीमध्ये बदल पुश करण्यासाठी ही कमांड आहे. स्थानिक पातळीवर तयार केलेल्या आणि अद्याप रिमोट रिपॉझिटरीमध्ये नसलेल्या सर्व कमिट पुश केल्या जातील (गिट पुश).
  4. ALT+CTRL+Z — स्थानिक रेपॉजिटरीमध्ये तयार केलेल्या शेवटच्या कमिटच्या स्थितीत विशिष्ट फाइलमधील रोलबॅक बदल. तुम्ही वरच्या डाव्या कोपर्‍यात संपूर्ण प्रकल्प निवडल्यास, तुम्ही सर्व फायलींमधील बदल परत करू शकता.
स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 12

आम्हाला काय हवे आहे?

काम पूर्ण करण्यासाठी, आम्हाला सर्वत्र वापरल्या जाणार्‍या मूलभूत परिस्थितीमध्ये प्रभुत्व मिळवणे आवश्यक आहे. एका वेगळ्या शाखेत नवीन कार्यक्षमता लागू करणे आणि नंतर ते रिमोट रिपॉझिटरीमध्ये ढकलणे हे उद्दिष्ट आहे (मग तुम्हाला मुख्य शाखेत पुल विनंती देखील तयार करणे आवश्यक आहे, परंतु ते या लेखाच्या व्याप्तीच्या बाहेर आहे). हे करण्यासाठी काय आवश्यक आहे?
  1. मुख्य शाखेतील सर्व वर्तमान बदल मिळवा (उदाहरणार्थ, "मास्टर").

  2. या मुख्य शाखेतून तुमच्या कामासाठी वेगळी शाखा तयार करा.

  3. नवीन कार्यक्षमता लागू करा.

  4. मुख्य शाखेत जा आणि आम्ही काम करत असताना काही नवीन बदल झाले आहेत का ते तपासा. नसल्यास, सर्वकाही ठीक आहे. परंतु जर काही बदल झाले असतील, तर आम्ही पुढील गोष्टी करतो: कार्यरत शाखेत जा आणि मुख्य शाखेतून आमच्या शाखेत बदल पुन्हा करा. जर सर्व काही ठीक झाले तर छान. परंतु संघर्ष होण्याची शक्यता आहे. जसे घडते तसे, रिमोट रिपॉजिटरीमध्ये वेळ न घालवता त्यांचे निराकरण आधीच केले जाऊ शकते.

    तुम्ही विचार करत आहात की तुम्ही हे का करावे? हे चांगले शिष्टाचार आहे आणि तुमची शाखा स्थानिक भांडारात ढकलल्यानंतर संघर्ष होण्यापासून प्रतिबंधित करते (अर्थातच, तरीही संघर्ष होण्याची शक्यता आहे, परंतु ते खूपच लहान होते).

  5. रिमोट रिपॉजिटरीमध्ये तुमचे बदल पुश करा.
पुढे काय येते ते तुमच्या कार्यांवर आणि तुमच्या कल्पनेवर अवलंबून असते.

रिमोट सर्व्हरवरून बदल मिळवायचे?

मी नवीन वचनबद्धतेसह README मध्ये वर्णन जोडले आहे आणि हे बदल मिळवू इच्छितो. स्थानिक रिपॉझिटरी आणि रिमोटमध्ये दोन्ही बदल केले असल्यास, आम्हाला विलीनीकरण आणि रिबेस दरम्यान निवडण्यासाठी आमंत्रित केले आहे. आम्ही विलीन करणे निवडतो. CTRL+T एंटर करा : स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 13तुम्ही आता README कसे बदलले आहे ते पाहू शकता, म्हणजे रिमोट रिपॉजिटरीमधील बदल आत खेचले गेले आहेत आणि खालच्या उजव्या कोपर्यात तुम्ही सर्व्हरवरून आलेल्या बदलांचे सर्व तपशील पाहू शकता.स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 14

मास्टरवर आधारित नवीन शाखा तयार करा

येथे सर्व काही सोपे आहे.
  1. तळाशी उजव्या कोपर्यात जा आणि Git: master वर क्लिक करा . + नवीन शाखा निवडा .

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 15
  2. चेकआउट शाखा चेकबॉक्स निवडलेला सोडा आणि नवीन शाखेचे नाव प्रविष्ट करा. माझ्यासाठी, ते रीडमी-इम्प्रोव्हर असेल .

    स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 16

    Git: master नंतर Git: readme-improver मध्ये बदलेल .

चला समांतर कामाचे अनुकरण करूया

विरोधाभास दिसण्यासाठी, कोणीतरी ते तयार केले पाहिजेत :D मी ब्राउझरद्वारे नवीन कमिटसह README संपादित करेन, अशा प्रकारे समांतर कार्याचे अनुकरण करेल. मी काम करत असताना त्याच फाईलमध्ये कोणीतरी बदल केल्यासारखे आहे. परिणामी संघर्ष होईल. मी 10 व्या ओळीतून "fully" हा शब्द काढून टाकेन.

आमची कार्यक्षमता लागू करा

आमचे कार्य README बदलणे आणि नवीन लेखात वर्णन जोडणे आहे. म्हणजेच Git मधील काम IntelliJ IDEA द्वारे होते. हे जोडा: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 17बदल झाले आहेत. आता आपण कमिट तयार करू शकतो. CTRL+K दाबा , जे आम्हाला देते: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 18कमिट तयार करण्यापूर्वी, आम्हाला ही विंडो काय ऑफर करते यावर बारकाईने लक्ष देणे आवश्यक आहे. तुम्हाला कुठे पहायचे हे दाखवण्यासाठी मी लाल बाण जोडले आहेत. येथे खूप मनोरंजक सामग्री आहे. कमिट मेसेज विभागात , आम्ही कमिटशी संबंधित मजकूर लिहितो. मग ते तयार करण्यासाठी, आम्हाला Commit वर क्लिक करावे लागेल. हॉटकी वापरून हे कसे करायचे ते मला अजून कळले नाही. जर कोणाला हे कसे कळले तर कृपया मला लिहा - यामुळे मला खूप आनंद होईल. आम्ही लिहितो की README बदलला आहे आणि कमिट तयार करा. कमिटच्या नावासह खालच्या डाव्या कोपर्यात एक अलर्ट पॉप अप होईल:स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 19

मुख्य शाखा बदलली आहे का ते तपासा

आम्ही आमचे कार्य पूर्ण केले. ते चालते. आम्ही चाचण्या लिहिल्या. सर्व काही ठीक आहे. परंतु सर्व्हरवर ढकलण्याआधी, यादरम्यान मुख्य शाखेत काही बदल झाले आहेत का ते तपासावे लागेल. असे कसे होऊ शकते? अगदी सहज: तुमच्या नंतर एखाद्याला एखादे कार्य मिळते आणि कोणीतरी ते तुमचे कार्य पूर्ण करण्यापेक्षा लवकर पूर्ण करते. म्हणून आपल्याला मुख्य शाखेत जावे लागेल. हे करण्यासाठी, खालील स्क्रीनशॉटमध्ये खालच्या उजव्या कोपर्यात जे दाखवले आहे ते आम्हाला करावे लागेल: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 20मुख्य शाखेत, रिमोट सर्व्हरवरून नवीनतम बदल मिळविण्यासाठी CTRL+T दाबा. काय बदल झाले ते पाहता, काय झाले ते तुम्ही सहज पाहू शकता:स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 21"fully" हा शब्द काढला. कदाचित मार्केटिंगमधील कोणीतरी असे लिहायचे नाही असे ठरवले आणि विकसकांना ते अद्यतनित करण्याचे कार्य दिले. आमच्याकडे आता मास्टर शाखेच्या नवीनतम आवृत्तीची स्थानिक प्रत आहे. readme-improver वर परत जा . आता आपल्याला मास्टर ब्रँचमधून आमच्या शाखेतील बदलांची पुनर्बांधणी करायची आहे. आम्ही हे करतो: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 22जर तुम्ही सर्व काही योग्यरित्या केले आणि माझ्याबरोबर अनुसरण केले, तर परिणाम README फाईलमध्ये विरोध दर्शवेल: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 23येथे आमच्याकडे समजून घेण्यासाठी आणि भिजवण्यासाठी बरीच माहिती देखील आहे. विरोधाभास असलेल्या फाइल्सची सूची (आमच्या बाबतीत, एक फाइल) येथे दर्शविली आहे. आम्ही तीन पर्यायांमधून निवडू शकतो:
  1. तुमचा स्वीकार करा — फक्त readme-improver कडून बदल स्वीकारा.
  2. त्यांचा स्वीकार करा - केवळ मास्टरकडून बदल स्वीकारा.
  3. विलीन करा — तुम्हाला काय ठेवायचे आहे आणि काय टाकायचे आहे ते स्वतः निवडा.
काय बदलले हे स्पष्ट नाही. जर काही बदल मुख्य शाखेत असतील तर ते तिथे आवश्यक असायला हवेत, त्यामुळे आम्ही आमचे बदल सहज स्वीकारू शकत नाही. त्यानुसार, आम्ही विलीनीकरण निवडतो : स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 24येथे आपण पाहू शकतो की तीन भाग आहेत:
  1. हे readme-improver मधील बदल आहेत.
  2. एकत्रित परिणाम. सध्या, बदलांपूर्वी तेच अस्तित्वात होते.
  3. मुख्य शाखेतील बदल.
आम्हाला विलीन केलेला परिणाम तयार करण्याची आवश्यकता आहे जे प्रत्येकाला संतुष्ट करेल. आमच्या बदलांपूर्वी काय बदलले होते याचे पुनरावलोकन करताना, आम्हाला जाणवते की त्यांनी फक्त "fully" हा शब्द काढून टाकला. ठीक आहे, काही हरकत नाही! याचा अर्थ असा की आम्ही विलीन केलेल्या निकालात ते काढून टाकू आणि नंतर आमचे बदल जोडू. एकदा आम्ही विलीन केलेला निकाल दुरुस्त केल्यावर, आम्ही लागू करा क्लिक करू शकतो . नंतर एक सूचना पॉप अप होईल, आम्हाला सांगेल की रिबेस यशस्वी झाला: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 25तेथे! आम्ही आमचा पहिला संघर्ष IntelliJ IDEA द्वारे सोडवला :D

रिमोट सर्व्हरवर बदल पुश करा

पुढील पायरी म्हणजे रिमोट सर्व्हरवर बदल पुश करणे आणि पुल विनंती तयार करणे. हे करण्यासाठी, फक्त CTRL+SHIFT+K दाबा . मग आम्हाला मिळेल: स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 26डावीकडे, रिमोट रिपॉझिटरीमध्ये न ढकललेल्या कमिटची यादी असेल. उजवीकडे बदललेल्या सर्व फाईल्स असतील. आणि तेच! पुश दाबा आणि तुम्हाला आनंदाचा अनुभव येईल :) पुश यशस्वी झाल्यास, तुम्हाला खालील उजव्या कोपर्यात यासारखी सूचना दिसेल:स्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 27

बोनस भाग

सुरुवातीला, मला या लेखात पुल विनंतीची निर्मिती जोडायची नव्हती, परंतु त्याशिवाय ते पूर्ण होणार नाही. तर, GitHub रेपॉजिटरी (अर्थातच तुमची आहे :)) वर जाऊ आणि आम्ही पाहतो की आम्हाला काय हवे आहे हे GitHub ला आधीच माहित आहे: Compare & pull requestस्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 28 वर क्लिक करा . नंतर पुल विनंती तयार करा क्लिक करा . कारण आम्ही संघर्ष आधीच सोडवला आहे, आता पुल विनंती तयार करताना, आम्ही ते ताबडतोब विलीन करू शकतो: आणि मला यावेळी एवढेच सांगायचे होते. अर्थात, मी फक्त तुमच्यासाठी दार थोडे उघडले आहे आणि तुम्हाला एक छोटासा भाग दाखवला आहे. तुम्हाला आवश्यकतेनुसार तुम्ही बाकीचे शिकाल. मला GitHub वर माझे अनुसरण करण्यासाठी तुम्हाला आमंत्रित करण्याची सवय आहेस्वर्गात बनवलेला सामना: Git आणि IntelliJ IDEA - 29, जिथे मी कामावर वापरत असलेल्या विविध तंत्रज्ञानाचा समावेश असलेले माझे प्रकल्प पोस्ट करतो. मी अलीकडे एक वैयक्तिक उपलब्धी केली: माझ्या एका प्रकल्पाला शंभराहून अधिक विकासकांनी तारे दिले. आपण जे काही केले आहे त्याचा वापर दुसऱ्याकडून होत आहे हे कळल्यावर एक अविश्वसनीय आनंदाची भावना असते. आणि ते चांगल्यासाठी वापरत आहे.

उपयुक्त दुवे

  1. CodeGym: Git सह प्रारंभ करणे: नवशिक्यांसाठी एक व्यापक मार्गदर्शक
  2. GitHub: सरावासाठी डेमो प्रकल्प
  3. JetBrains: Git Repository सेट करा
  4. GitHub: माझे खाते
टिप्पण्या
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION