|
|
<!--
|
|
|
CO_OP_TRANSLATOR_METADATA:
|
|
|
{
|
|
|
"original_hash": "5c383cc2cc23bb164b06417d1c107a44",
|
|
|
"translation_date": "2025-11-25T12:08:53+00:00",
|
|
|
"source_file": "1-getting-started-lessons/2-github-basics/README.md",
|
|
|
"language_code": "ne"
|
|
|
}
|
|
|
-->
|
|
|
# GitHub परिचय
|
|
|
|
|
|
नमस्ते, भविष्यका डेभलपर! 👋 संसारभरका लाखौं कोडरहरूसँग सामेल हुन तयार हुनुहुन्छ? म साँच्चै उत्साहित छु तपाईंलाई GitHub मा परिचय गराउन – यसलाई प्रोग्रामरहरूको लागि सामाजिक मिडिया प्लेटफर्मको रूपमा सोच्नुहोस्, तर यहाँ लन्चको फोटोहरू साझा गर्ने सट्टा, हामी कोड साझा गर्दैछौं र सँगै अद्भुत चीजहरू निर्माण गर्दैछौं!
|
|
|
|
|
|
यो कुरा साँच्चै मेरो दिमागलाई उडाउँछ: तपाईंको फोनमा रहेको प्रत्येक एप, तपाईंले भ्रमण गर्ने प्रत्येक वेबसाइट, र तपाईंले प्रयोग गर्न सिक्ने अधिकांश उपकरणहरू विकासकर्ताहरूको टोलीले GitHub जस्ता प्लेटफर्महरूमा सहयोग गरेर निर्माण गरेका हुन्। तपाईंलाई मनपर्ने संगीत एप? तपाईंजस्तै कसैले यसमा योगदान दिएका छन्। त्यो खेल जसलाई तपाईं छोड्न सक्नुहुन्न? हो, सम्भवतः GitHub सहयोगको साथ निर्माण गरिएको। र अब तपाईं त्यो अद्भुत समुदायको हिस्सा बन्न सिक्दै हुनुहुन्छ!
|
|
|
|
|
|
मलाई थाहा छ यो सुरुमा धेरै जस्तो लाग्न सक्छ – म पनि मेरो पहिलो GitHub पृष्ठमा हेर्दै "यो सबैको अर्थ के हो?" भनेर सोच्दै थिएँ। तर कुरा के छ भने: प्रत्येक विकासकर्ता ठीक त्यही ठाउँबाट सुरु गरेका छन् जहाँ तपाईं अहिले हुनुहुन्छ। यो पाठको अन्त्यसम्ममा, तपाईंको आफ्नै GitHub रिपोजिटरी हुनेछ (यसलाई क्लाउडमा तपाईंको व्यक्तिगत परियोजना प्रदर्शनको रूपमा सोच्नुहोस्), र तपाईंले आफ्नो काम बचत गर्ने, अरूसँग साझा गर्ने, र लाखौं मानिसहरूले प्रयोग गर्ने परियोजनाहरूमा योगदान गर्ने तरिका सिक्नुहुनेछ।
|
|
|
|
|
|
हामी यो यात्रा सँगै गर्नेछौं, एक कदममा। कुनै हतार छैन, कुनै दबाब छैन – केवल तपाईं, म, र केही साँच्चै चिसो उपकरणहरू जुन तपाईंको नयाँ साथी बन्नेछन्!
|
|
|
|
|
|

|
|
|
> स्केच नोट [Tomomi Imura](https://twitter.com/girlie_mac) द्वारा
|
|
|
|
|
|
```mermaid
|
|
|
journey
|
|
|
title तपाईंको GitHub साहसिक यात्रा आज
|
|
|
section सेटअप
|
|
|
Git स्थापना गर्नुहोस्: 4: तपाईं
|
|
|
खाता सिर्जना गर्नुहोस्: 5: तपाईं
|
|
|
पहिलो रिपोजिटरी: 5: तपाईं
|
|
|
section Git मास्टर गर्नुहोस्
|
|
|
स्थानीय परिवर्तनहरू: 4: तपाईं
|
|
|
कमिटहरू र पुशहरू: 5: तपाईं
|
|
|
ब्रान्चिङ: 4: तपाईं
|
|
|
section सहकार्य गर्नुहोस्
|
|
|
परियोजनाहरू फोर्क गर्नुहोस्: 4: तपाईं
|
|
|
पुल अनुरोधहरू: 5: तपाईं
|
|
|
खुला स्रोत: 5: तपाईं
|
|
|
```
|
|
|
## प्रि-लेक्चर क्विज
|
|
|
[प्रि-लेक्चर क्विज](https://ff-quizzes.netlify.app)
|
|
|
|
|
|
## परिचय
|
|
|
|
|
|
रोचक कुराहरूमा डुब्नु अघि, तपाईंको कम्प्युटरलाई केही GitHub जादूको लागि तयार गरौं! यसलाई उत्कृष्ट कृति सिर्जना गर्नु अघि तपाईंको कला सामग्रीहरू व्यवस्थित गर्ने जस्तो सोच्नुहोस् – सही उपकरणहरू तयार हुँदा सबै कुरा धेरै सहज र धेरै रमाइलो हुन्छ।
|
|
|
|
|
|
म तपाईंलाई प्रत्येक सेटअप चरण व्यक्तिगत रूपमा मार्गदर्शन गर्नेछु, र म वाचा गर्छु कि यो सुरुमा जति डर लाग्दो देखिन्छ त्यति छैन। यदि केही तुरुन्तै क्लिक गर्दैन भने, त्यो पूर्ण रूपमा सामान्य हो! मैले मेरो पहिलो विकास वातावरण सेटअप गर्दा प्राचीन हाइरोग्लिफिक्स पढ्ने प्रयास गरिरहेको जस्तो महसुस गरेको सम्झन्छु। प्रत्येक विकासकर्ता ठीक त्यही ठाउँमा छन् जहाँ तपाईं अहिले हुनुहुन्छ, सोच्दै कि उनीहरूले यो सही गरिरहेका छन् कि छैनन्। स्पोइलर अलर्ट: यदि तपाईं यहाँ सिक्दै हुनुहुन्छ भने, तपाईं पहिले नै सही गरिरहनुभएको छ! 🌟
|
|
|
|
|
|
यस पाठमा, हामी कभर गर्नेछौं:
|
|
|
|
|
|
- तपाईंले आफ्नो मेसिनमा गर्ने काम ट्र्याक गर्ने
|
|
|
- अरूसँग परियोजनाहरूमा काम गर्ने
|
|
|
- ओपन सोर्स सफ्टवेयरमा योगदान गर्ने तरिका
|
|
|
|
|
|
### पूर्वापेक्षाहरू
|
|
|
|
|
|
तपाईंको कम्प्युटरलाई केही GitHub जादूको लागि तयार गरौं! चिन्ता नगर्नुहोस् – यो सेटअप तपाईंले केवल एक पटक गर्नुपर्ने कुरा हो, र त्यसपछि तपाईंको सम्पूर्ण कोडिङ यात्रा लागि तयार हुनुहुनेछ।
|
|
|
|
|
|
ठीक छ, आधारबाट सुरु गरौं! पहिलो, हामी जाँच गर्न आवश्यक छ कि Git पहिले नै तपाईंको कम्प्युटरमा छ कि छैन। Git मूलतः एक सुपर-स्मार्ट सहायक जस्तै हो जसले तपाईंको कोडमा तपाईंले गरेका प्रत्येक परिवर्तनलाई सम्झन्छ – प्रत्येक दुई सेकेन्डमा हतारमा Ctrl+S हिट गर्ने भन्दा धेरै राम्रो (हामी सबै त्यहाँ पुगेका छौं!)।
|
|
|
|
|
|
आउनुहोस् जाँच गरौं कि Git पहिले नै स्थापना गरिएको छ कि छैन यो जादुई कमाण्ड टाइप गरेर:
|
|
|
`git --version`
|
|
|
|
|
|
यदि Git त्यहाँ छैन भने, चिन्ता नगर्नुहोस्! केवल [Git डाउनलोड गर्नुहोस्](https://git-scm.com/downloads) मा जानुहोस् र यसलाई प्राप्त गर्नुहोस्। एकपटक तपाईंले यसलाई स्थापना गर्नुभयो भने, हामीले Git लाई तपाईंलाई ठीकसँग परिचय गराउन आवश्यक छ:
|
|
|
|
|
|
> 💡 **पहिलो पटक सेटअप**: यी कमाण्डहरूले Git लाई तपाईं को हुनुहुन्छ भनेर बताउँछन्। यो जानकारी तपाईंले गर्ने प्रत्येक कमिटमा संलग्न हुनेछ, त्यसैले सार्वजनिक रूपमा साझा गर्न सहज नाम र इमेल चयन गर्नुहोस्।
|
|
|
|
|
|
```bash
|
|
|
git config --global user.name "your-name"
|
|
|
git config --global user.email "your-email"
|
|
|
```
|
|
|
|
|
|
Git पहिले नै कन्फिगर गरिएको छ कि छैन जाँच गर्न तपाईं टाइप गर्न सक्नुहुन्छ:
|
|
|
```bash
|
|
|
git config --list
|
|
|
```
|
|
|
|
|
|
तपाईंलाई GitHub खाता, कोड एडिटर (जस्तै Visual Studio Code), र तपाईंको टर्मिनल (वा: कमाण्ड प्रम्प्ट) खोल्न आवश्यक हुनेछ।
|
|
|
|
|
|
[github.com](https://github.com/) मा जानुहोस् र खाता सिर्जना गर्नुहोस् यदि तपाईंले पहिले नै गर्नुभएको छैन भने, वा लग इन गरेर आफ्नो प्रोफाइल भर्नुहोस्।
|
|
|
|
|
|
💡 **आधुनिक सुझाव**: पासवर्ड बिना सजिलो प्रमाणीकरणको लागि [SSH keys](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) सेटअप गर्ने वा [GitHub CLI](https://cli.github.com/) प्रयोग गर्ने विचार गर्नुहोस्।
|
|
|
|
|
|
✅ GitHub संसारको एकमात्र कोड रिपोजिटरी होइन; अरू पनि छन्, तर GitHub सबैभन्दा परिचित छ।
|
|
|
|
|
|
### तयारी
|
|
|
|
|
|
तपाईंलाई स्थानीय मेसिन (ल्यापटप वा पीसी) मा कोड परियोजनाको साथ एक फोल्डर, र GitHub मा एक सार्वजनिक रिपोजिटरी आवश्यक हुनेछ, जसले अरूको परियोजनामा योगदान गर्ने तरिका उदाहरणको रूपमा सेवा गर्नेछ।
|
|
|
|
|
|
### तपाईंको कोड सुरक्षित राख्दै
|
|
|
|
|
|
हामी एक क्षणको लागि सुरक्षा बारे कुरा गरौं – तर चिन्ता नगर्नुहोस्, हामी तपाईंलाई डराउने कुरा गर्दैनौं! यी सुरक्षा अभ्यासहरू तपाईंको कार वा तपाईंको घर लक गर्ने जस्तै सोच्नुहोस्। यी सरल बानीहरू स्वाभाविक बन्छन् र तपाईंको मेहनतलाई सुरक्षित राख्छन्।
|
|
|
|
|
|
हामी तपाईंलाई GitHub सँग काम गर्ने आधुनिक, सुरक्षित तरिकाहरू देखाउनेछौं। यसरी, तपाईंले राम्रो बानीहरू विकास गर्नुहुनेछ जसले तपाईंको कोडिङ करियरभरि तपाईंलाई राम्रो सेवा दिनेछ।
|
|
|
|
|
|
GitHub सँग काम गर्दा, सुरक्षा उत्तम अभ्यासहरू पालना गर्नु महत्त्वपूर्ण छ:
|
|
|
|
|
|
| सुरक्षा क्षेत्र | उत्तम अभ्यास | किन यो महत्त्वपूर्ण छ |
|
|
|
|---------------|---------------|----------------|
|
|
|
| **प्रमाणीकरण** | SSH keys वा Personal Access Tokens प्रयोग गर्नुहोस् | पासवर्ड कम सुरक्षित छन् र चरणबद्ध हुँदैछन् |
|
|
|
| **दुई-कारक प्रमाणीकरण** | तपाईंको GitHub खातामा 2FA सक्षम गर्नुहोस् | खाताको सुरक्षामा थप तह थप्छ |
|
|
|
| **रिपोजिटरी सुरक्षा** | संवेदनशील जानकारी कहिल्यै कमिट नगर्नुहोस् | API keys र पासवर्डहरू सार्वजनिक रिपोजमा कहिल्यै हुनु हुँदैन |
|
|
|
| **निर्भरता व्यवस्थापन** | Dependabot अपडेटहरूको लागि सक्षम गर्नुहोस् | तपाईंको निर्भरतालाई सुरक्षित र अद्यावधिक राख्छ |
|
|
|
|
|
|
> ⚠️ **महत्त्वपूर्ण सुरक्षा सम्झना**: API keys, पासवर्डहरू, वा अन्य संवेदनशील जानकारी कुनै पनि रिपोजिटरीमा कहिल्यै कमिट नगर्नुहोस्। संवेदनशील डाटालाई सुरक्षित गर्न environment variables र `.gitignore` फाइलहरू प्रयोग गर्नुहोस्।
|
|
|
|
|
|
**आधुनिक प्रमाणीकरण सेटअप:**
|
|
|
|
|
|
```bash
|
|
|
# SSH कुञ्जी उत्पन्न गर्नुहोस् (आधुनिक ed25519 एल्गोरिथ्म)
|
|
|
ssh-keygen -t ed25519 -C "your_email@example.com"
|
|
|
|
|
|
# SSH प्रयोग गर्न Git सेट अप गर्नुहोस्
|
|
|
git remote set-url origin git@github.com:username/repository.git
|
|
|
```
|
|
|
|
|
|
> 💡 **प्रो टिप**: SSH keys ले बारम्बार पासवर्ड प्रविष्ट गर्न आवश्यकतालाई हटाउँछ र परम्परागत प्रमाणीकरण विधिहरू भन्दा सुरक्षित हुन्छ।
|
|
|
|
|
|
---
|
|
|
|
|
|
## तपाईंको कोडलाई प्रो जस्तै व्यवस्थापन गर्दै
|
|
|
|
|
|
ठीक छ, अब कुरा साँच्चै रोमाञ्चक हुँदैछ! 🎉 हामी तपाईंको कोडलाई प्रोहरू जस्तै ट्र्याक र व्यवस्थापन गर्ने तरिका सिक्दैछौं, र इमानदारीपूर्वक, यो मेरो मनपर्ने कुरा हो किनभने यो यति परिवर्तनकारी छ।
|
|
|
|
|
|
कल्पना गर्नुहोस्: तपाईं एक अद्भुत कथा लेख्दै हुनुहुन्छ, र तपाईं प्रत्येक ड्राफ्ट, प्रत्येक उत्कृष्ट सम्पादन, र प्रत्येक "पर्खनुहोस्, यो प्रतिभा हो!" क्षणलाई ट्र्याक गर्न चाहनुहुन्छ। यही कुरा Git तपाईंको कोडको लागि गर्छ! यो सबै कुरा सम्झने सबैभन्दा अविश्वसनीय समय-यात्रा नोटबुक जस्तै हो – प्रत्येक कीस्ट्रोक, प्रत्येक परिवर्तन, प्रत्येक "ओह, यसले सबै कुरा बिगार्यो" क्षण जुन तपाईं तुरुन्तै पूर्ववत गर्न सक्नुहुन्छ।
|
|
|
|
|
|
म इमानदार हुनेछु – यो सुरुमा भारी लाग्न सक्छ। जब मैले सुरु गरें, मैले सोचेँ "किन म केवल मेरो फाइलहरू सामान्य रूपमा बचत गर्न सक्दिन?" तर यसमा विश्वास गर्नुहोस्: एकपटक Git तपाईंलाई क्लिक गरेपछि (र यो हुनेछ!), तपाईंको एउटा प्रकाश बल्ब क्षण हुनेछ जहाँ तपाईं सोच्नुहुन्छ "मैले यसबिना कहिल्यै कोड कसरी गरे?" यो जस्तै हो जब तपाईं हिँड्दै सबै ठाउँमा पुगेपछि उड्न सक्ने कुरा पत्ता लगाउनुहुन्छ!
|
|
|
|
|
|
मानौं तपाईंको स्थानीय रूपमा केही कोड परियोजनाको साथ एक फोल्डर छ र तपाईं git - संस्करण नियन्त्रण प्रणाली प्रयोग गरेर तपाईंको प्रगति ट्र्याक गर्न चाहनुहुन्छ। केही मानिसहरूले git प्रयोग गर्न भविष्यको आफ्नै लागि प्रेम पत्र लेख्न जस्तै तुलना गर्छन्। तपाईंको कमिट सन्देशहरू दिनहरू वा हप्ताहरू वा महिनाहरू पछि पढ्दै तपाईंले किन निर्णय गर्नुभयो भनेर सम्झन सक्नुहुन्छ, वा परिवर्तन "रोलब्याक" गर्न सक्नुहुन्छ - त्यो हो, जब तपाईं राम्रो "कमिट सन्देशहरू" लेख्नुहुन्छ।
|
|
|
|
|
|
```mermaid
|
|
|
flowchart TD
|
|
|
A[📁 तपाईंको प्रोजेक्ट फाइलहरू] --> B{के यो Git रिपोजिटरी हो?}
|
|
|
B -->|होइन| C[git init]
|
|
|
B -->|हो| D[परिवर्तन गर्नुहोस्]
|
|
|
C --> D
|
|
|
D --> E[git add .]
|
|
|
E --> F["git commit -m 'सन्देश'"]
|
|
|
F --> G[git push]
|
|
|
G --> H[🌟 GitHub मा कोड!]
|
|
|
|
|
|
H --> I{सहकार्य गर्न चाहनुहुन्छ?}
|
|
|
I -->|हो| J[Fork & Clone]
|
|
|
I -->|होइन| D
|
|
|
J --> K[ब्रान्च बनाउनुहोस्]
|
|
|
K --> L[परिवर्तन गर्नुहोस्]
|
|
|
L --> M[Pull Request]
|
|
|
M --> N[🎉 योगदान गर्दै!]
|
|
|
|
|
|
style A fill:#fff59d
|
|
|
style H fill:#c8e6c9
|
|
|
style N fill:#ff4081,color:#fff
|
|
|
```
|
|
|
### कार्य: तपाईंको पहिलो रिपोजिटरी सिर्जना गर्नुहोस्!
|
|
|
|
|
|
> 🎯 **तपाईंको मिशन (र म तपाईंको लागि यति उत्साहित छु!)**: हामी सँगै तपाईंको पहिलो GitHub रिपोजिटरी सिर्जना गर्नेछौं! यहाँ समाप्त हुँदा, तपाईंको कोड बस्ने इन्टरनेटको आफ्नै सानो कुनो हुनेछ, र तपाईंले तपाईंको पहिलो "कमिट" (यो डेभलपरको भाषामा तपाईंको कामलाई साँच्चै स्मार्ट तरिकामा बचत गर्ने) बनाउनुहुनेछ।
|
|
|
>
|
|
|
> यो साँच्चै यस्तो विशेष क्षण हो – तपाईं विश्वव्यापी विकासकर्ताहरूको समुदायमा आधिकारिक रूपमा सामेल हुन लाग्नुभएको छ! मैले मेरो पहिलो रिपो सिर्जना गर्दा र "वाह, म साँच्चै यो गर्दैछु!" भनेर सोच्दा आएको रोमाञ्चकता अझै सम्झन्छु।
|
|
|
|
|
|
आउनुहोस् यो साहसिक यात्रा सँगै गरौं, चरण-दर-चरण। प्रत्येक भागमा आफ्नो समय लिनुहोस् – हतारको लागि कुनै पुरस्कार छैन, र म वाचा गर्छु कि प्रत्येक चरणले अर्थ राख्नेछ। सम्झनुहोस्, तपाईंले प्रशंसा गर्ने प्रत्येक कोडिङ सुपरस्टार एकपटक ठीक त्यही ठाउँमा थिए जहाँ तपाईं हुनुहुन्छ, आफ्नो पहिलो रिपोजिटरी सिर्जना गर्न लाग्दै। यो कति चिसो छ?
|
|
|
|
|
|
> भिडियो हेर्नुहोस्
|
|
|
>
|
|
|
> [](https://www.youtube.com/watch?v=9R31OUPpxU4)
|
|
|
|
|
|
**आउनुहोस् यो सँगै गरौं:**
|
|
|
|
|
|
1. **GitHub मा तपाईंको रिपोजिटरी सिर्जना गर्नुहोस्**। GitHub.com मा जानुहोस् र त्यो चम्किलो हरियो **New** बटन (वा माथि दायाँ कुनामा **+** चिन्ह) खोज्नुहोस्। यसलाई क्लिक गर्नुहोस् र **New repository** चयन गर्नुहोस्।
|
|
|
|
|
|
यहाँ के गर्ने:
|
|
|
1. तपाईंको रिपोजिटरीलाई नाम दिनुहोस् – यसलाई तपाईंको लागि अर्थपूर्ण बनाउनुहोस्!
|
|
|
1. चाहनुहुन्छ भने विवरण थप्नुहोस् (यसले अरूलाई तपाईंको परियोजना के बारेमा हो भनेर बुझ्न मद्दत गर्दछ)
|
|
|
1. तपाईं यसलाई सार्वजनिक (सबैले देख्न सक्छन्) वा निजी (केवल तपाईंको लागि) चाहनुहुन्छ कि निर्णय गर्नुहोस्
|
|
|
1. म सिफारिस गर्छु कि README फाइल थप्नको लागि बक्स जाँच गर्नुहोस् – यो तपाईंको परियोजनाको अगाडिको पृष्ठ जस्तै हो
|
|
|
1. **Create repository** क्लिक गर्नुहोस् र उत्सव मनाउनुहोस् – तपाईंले तपाईंको पहिलो रिपो सिर्जना गर्नुभयो! 🎉
|
|
|
|
|
|
2. **तपाईंको परियोजना फोल्डरमा नेभिगेट गर्नुहोस्**। अब आउनुहोस् तपाईंको टर्मिनल खोलौं (चिन्ता नगर्नुहोस्, यो देखिए जस्तो डर लाग्दो छैन!)। हामीले तपाईंको कम्प्युटरलाई तपाईंको परियोजना फाइलहरू कहाँ छन् भनेर भन्न आवश्यक छ। यो कमाण्ड टाइप गर्नुहोस्:
|
|
|
|
|
|
```bash
|
|
|
cd [name of your folder]
|
|
|
```
|
|
|
|
|
|
**यहाँ हामी के गर्दैछौं:**
|
|
|
- हामी मूलतः भनिरहेका छौं "हे कम्प्युटर, मलाई मेरो परियोजना फोल्डरमा लैजाऊ"
|
|
|
- यो तपाईंको डेस्कटपमा विशिष्ट फोल्डर खोल्ने जस्तै हो, तर हामी यसलाई पाठ कमाण्डहरूसँग गर्दैछौं
|
|
|
- `[name of your folder]` लाई तपाईंको परियोजना फोल्डरको वास्तविक नामले प्रतिस्थापन गर्नुहोस्
|
|
|
|
|
|
3. **तपाईंको फोल्डरलाई Git रिपोजिटरीमा बदल्नुहोस्**। यहाँ जादू हुन्छ! टाइप गर्नुहोस्:
|
|
|
|
|
|
```bash
|
|
|
git init
|
|
|
```
|
|
|
|
|
|
**यहाँ के भयो (धेरै चिसो कुरा!):**
|
|
|
- Git ले तपाईंको परियोजनामा एक लुकेको `.git` फोल्डर सिर्जना गर्यो – तपाईंले यसलाई देख्नुहुनेछैन, तर यो त्यहाँ छ!
|
|
|
- तपाईंको नियमित फोल्डर अब एक "रिपोजिटरी" हो जसले तपाईंले गरेका प्रत्येक परिवर्तनलाई ट्र्याक गर्न सक्छ
|
|
|
- यसलाई तपाईंको फोल्डरलाई सबै कुरा सम्झने सुपरपावरहरू दिने जस्तै सोच्नुहोस्
|
|
|
|
|
|
4. **के भइरहेको छ जाँच गर्नुहोस्**। आउनुहोस् Git ले अहिले तपाईंको परियोजनाको बारेमा के सोचिरहेको छ हेर्नुहोस्:
|
|
|
|
|
|
```bash
|
|
|
git status
|
|
|
```
|
|
|
|
|
|
**Git तपाईंलाई के बताउँदैछ बुझ्दै:**
|
|
|
|
|
|
तपाईंले यस्तो देखिने कुरा देख्न सक्नुहुन्छ:
|
|
|
|
|
|
```output
|
|
|
Changes not staged for commit:
|
|
|
(use "git add <file>..." to update what will be committed)
|
|
|
(use "git restore <file>..." to discard changes in working directory)
|
|
|
|
|
|
modified: file.txt
|
|
|
modified: file2.txt
|
|
|
```
|
|
|
|
|
|
**पैनिक नगर्नुहोस्! यसको अर्थ के हो:**
|
|
|
- **रातो** मा फाइलहरू परिवर्तन भएका फाइलहरू हुन् तर अझै बचत गर्न तयार छैनन्
|
|
|
- **हरियो** मा फाइलहरू (जब तपाईं देख्नुहुन्छ) बचत गर्न तयार छन्
|
|
|
- Git तपाईंलाई अगाडि के गर्न सकिन्छ भनेर ठीक बताउँदैछ
|
|
|
|
|
|
> 💡 **प्रो टिप**: `git status` कमाण्ड तपाईंको सबैभन्दा राम्रो साथी हो! तपाईंलाई के भइरहेको छ भनेर भ्रमित हुँदा प्रयोग गर्नुहोस्। यो Git लाई सोध्ने जस्तै हो "हे, अहिले स्थिति के हो?"
|
|
|
|
|
|
5. **तपाईंको फाइलहरू बचत गर्न तयार गर्नुहोस्** (यसलाई "स्टेजिङ" भनिन्छ):
|
|
|
|
|
|
```bash
|
|
|
git add .
|
|
|
```
|
|
|
|
|
|
**हामीले के गर्यौं:**
|
|
|
- हामीले Git लाई भने "हे, म मेरो फोल्डरका सबै फाइलहरू अर्को बचतमा समावेश गर्न चाहन्छु"
|
|
|
- `.` भन्नु जस्तै हो "यस फोल्डरमा सबै कुरा"
|
|
|
- अब तपाईंको फाइलहरू "स्टेज गरिएको" छन् र अर्को चरणको लागि तयार छन्
|
|
|
|
|
|
**अझ चयनात्मक हुन चाहनुहुन्छ?** तपाईं केवल विशिष्ट फाइलहरू थप्न सक्नुहुन्छ:
|
|
|
|
|
|
```bash
|
|
|
git add [file or folder name]
|
|
|
```
|
|
|
|
|
|
**किन तपाईं यसो गर्न चाहनुहुन्छ?**
|
|
|
- कहिलेकाहीं तपाईं सम्बन्धित परिवर्तनहरू सँगै बचत गर्न चाहनुहुन्छ
|
|
|
- यसले तपाईंको कामलाई तार्किक टुक्रामा व्यवस्थित गर्न मद्दत गर्दछ
|
|
|
- के परिवर्तन भयो र कहिले भनेर बुझ्न सजिलो बनाउँछ
|
|
|
|
|
|
**तपाईंको विचार परिवर्तन भयो?** चिन्ता नगर्नुहोस्! तपाईं फाइलहरू यसरी अनस्टेज गर्न सक्नुहुन्छ:
|
|
|
|
|
|
```bash
|
|
|
# सबै कुरा अनस्टेज गर्नुहोस्
|
|
|
git reset
|
|
|
|
|
|
# केवल एउटा फाइल अनस्टेज गर्नुहोस्
|
|
|
git reset [file name]
|
|
|
```
|
|
|
|
|
|
चिन्ता नगर्नुहोस् – यसले तपाईंको काम मेटाउँदैन, यसले केवल फाइलहरूलाई "बचत गर्न तयार" थुप्रोबाट हटाउँछ।
|
|
|
|
|
|
6. **तपाईंको काम स्थायी रूपमा बचत गर्नुहोस्** (तपाईंको पहिलो कमिट बनाउँदै!):
|
|
|
|
|
|
```bash
|
|
|
git commit -m "first commit"
|
|
|
```
|
|
|
|
|
|
**🎉 बधाई छ! तपाईंले तपाईंको पहिलो कमिट गर्नुभयो!**
|
|
|
|
|
|
**यहाँ के भयो:**
|
|
|
- Git ले तपाईंको स्टेज गरिएको सबै फाइलहरूको "स्न्यापशट" यस सटीक क्षणमा लियो
|
|
|
- तपाईंको कमिट सन्देश "पहिलो कमिट" ले यो बचत बिन्दु के बारेमा हो भनेर व्याख्या गर्दछ
|
|
|
- Git ले यस स्न्यापशटलाई एक अद्वितीय ID दियो ताकि तपाईं यसलाई पछि सधैं फेला पार्न सक्नुहुन्छ
|
|
|
- तपाईंले आधिकारिक रूपमा तपाईंको परियोजनाको इतिहास ट्र्याक गर्न सुरु गर्नुभयो!
|
|
|
|
|
|
> 💡 **भविष्यका कमिट सन्देशहरू**: तपाईंको अर्को कमिटहरूको लागि, अझ वर्णनात्मक बनौं! "अपडेट गरिएको सामान" सट्टा, "होमपेजमा सम्पर्क फारम थप्नुहोस्" वा "नेभिगेसन मेनु बग ठीक गर्नुहोस्" प्रयास गर्नुहोस्। तपाईंको भविष्यको स्वयम् तपाईंलाई धन्यवाद दिनेछ!
|
|
|
|
|
|
7. **तपाईंको स्थानीय परियोजनालाई GitHub सँग जडान गर्नुहोस्**। अहिले, तपाईंको परियोजना केवल तपाईंको कम्प
|
|
|
- हामीले तपाईंको स्थानीय प्रोजेक्ट र तपाईंको GitHub रिपोजिटरी बीच कनेक्शन बनायौं।
|
|
|
- "Origin" तपाईंको GitHub रिपोजिटरीको उपनाम मात्र हो – यो फोनमा सम्पर्क थप्ने जस्तै हो।
|
|
|
- अब तपाईंको स्थानीय Gitलाई थाहा छ कि तपाईंको कोड कहिले र कहाँ पठाउनुपर्छ जब तपाईं यसलाई साझा गर्न तयार हुनुहुन्छ।
|
|
|
|
|
|
💡 **सजिलो तरिका**: यदि तपाईंले GitHub CLI स्थापना गर्नुभएको छ भने, तपाईं यो एक आदेशमा गर्न सक्नुहुन्छ:
|
|
|
```bash
|
|
|
gh repo create my-repo --public --push --source=.
|
|
|
```
|
|
|
|
|
|
8. **तपाईंको कोड GitHub मा पठाउनुहोस्** (ठूलो क्षण!):
|
|
|
|
|
|
```bash
|
|
|
git push -u origin main
|
|
|
```
|
|
|
|
|
|
**🚀 यो हो! तपाईं आफ्नो कोड GitHub मा अपलोड गर्दै हुनुहुन्छ!**
|
|
|
|
|
|
**के भइरहेको छ:**
|
|
|
- तपाईंको commits तपाईंको कम्प्युटरबाट GitHub मा यात्रा गर्दैछन्।
|
|
|
- `-u` फ्ल्यागले स्थायी कनेक्शन सेटअप गर्दछ ताकि भविष्यमा push गर्न सजिलो होस्।
|
|
|
- "main" तपाईंको प्राथमिक शाखाको नाम हो (जस्तै मुख्य फोल्डर)।
|
|
|
- यसपछि, तपाईं भविष्यका अपलोडहरूको लागि मात्र `git push` टाइप गर्न सक्नुहुन्छ!
|
|
|
|
|
|
💡 **छोटो नोट**: यदि तपाईंको शाखाको नाम "master" जस्तै केही फरक छ भने, त्यो नाम प्रयोग गर्नुहोस्। तपाईं `git branch --show-current` प्रयोग गरेर जाँच गर्न सक्नुहुन्छ।
|
|
|
|
|
|
9. **तपाईंको नयाँ दैनिक कोडिङ ताल** (यो लत लाग्ने ठाउँ हो!):
|
|
|
|
|
|
अबदेखि, जब तपाईं आफ्नो प्रोजेक्टमा परिवर्तन गर्नुहुन्छ, तपाईंले यो सरल तीन-चरणको प्रक्रिया अपनाउनुहुनेछ:
|
|
|
|
|
|
```bash
|
|
|
git add .
|
|
|
git commit -m "describe what you changed"
|
|
|
git push
|
|
|
```
|
|
|
|
|
|
**यो तपाईंको कोडिङको मुटुको धड्कन बन्छ:**
|
|
|
- तपाईंको कोडमा केही उत्कृष्ट परिवर्तन गर्नुहोस् ✨
|
|
|
- `git add` प्रयोग गरेर तिनीहरूलाई stage गर्नुहोस् ("हे Git, यी परिवर्तनहरूमा ध्यान दिनुहोस्!")
|
|
|
- `git commit` र एक वर्णनात्मक सन्देशको साथ तिनीहरूलाई सुरक्षित गर्नुहोस् (भविष्यको तपाईंले तपाईंलाई धन्यवाद दिनेछ!)
|
|
|
- `git push` प्रयोग गरेर तिनीहरूलाई संसारसँग साझा गर्नुहोस् 🚀
|
|
|
- दोहोर्याउनुहोस् – गम्भीरतापूर्वक, यो सास फेर्ने जस्तै प्राकृतिक बन्छ!
|
|
|
|
|
|
म यो workflow मन पराउँछु किनभने यो भिडियो गेममा धेरै save points भएको जस्तै हो। तपाईंले मन पराएको परिवर्तन गर्नुभयो? Commit गर्नुहोस्! केही जोखिमपूर्ण प्रयास गर्न चाहनुहुन्छ? कुनै समस्या छैन – यदि चीजहरू गलत दिशामा गए भने तपाईं सधैं आफ्नो अन्तिम commit मा फर्कन सक्नुहुन्छ!
|
|
|
|
|
|
> 💡 **टिप**: तपाईंले `.gitignore` फाइल अपनाउन चाहनुहुन्छ जसले तपाईं GitHub मा ट्र्याक गर्न चाहनुहुन्न फाइलहरू रोक्छ - जस्तै त्यो नोट्स फाइल जुन तपाईंले त्यही फोल्डरमा राख्नुहुन्छ तर सार्वजनिक रिपोजिटरीमा कुनै स्थान छैन। तपाईं `.gitignore` फाइलहरूको टेम्प्लेट [`.gitignore templates`](https://github.com/github/gitignore) मा पाउन सक्नुहुन्छ वा [gitignore.io](https://www.toptal.com/developers/gitignore) प्रयोग गरेर एउटा बनाउन सक्नुहुन्छ।
|
|
|
|
|
|
### 🧠 **पहिलो रिपोजिटरी चेक-इन: कस्तो लाग्यो?**
|
|
|
|
|
|
**एक क्षण लिनुहोस् र उत्सव मनाउनुहोस्:**
|
|
|
- पहिलो पटक तपाईंको कोड GitHub मा देख्दा कस्तो लाग्यो?
|
|
|
- कुन चरण सबैभन्दा भ्रमित लाग्यो, र कुन आश्चर्यजनक रूपमा सजिलो लाग्यो?
|
|
|
- तपाईं `git add`, `git commit`, र `git push` बीचको भिन्नता आफ्नै शब्दमा व्याख्या गर्न सक्नुहुन्छ?
|
|
|
|
|
|
```mermaid
|
|
|
stateDiagram-v2
|
|
|
[*] --> LocalFiles: परियोजना सिर्जना गर्नुहोस्
|
|
|
LocalFiles --> Staged: git add .
|
|
|
Staged --> Committed: git commit
|
|
|
Committed --> GitHub: git push
|
|
|
GitHub --> [*]: सफल! 🎉
|
|
|
|
|
|
note right of Staged
|
|
|
फाइलहरू बचत गर्न तयार
|
|
|
end note
|
|
|
|
|
|
note right of Committed
|
|
|
स्न्यापशट सिर्जना गरियो
|
|
|
end note
|
|
|
```
|
|
|
> **स्मरण गर्नुहोस्**: अनुभवी विकासकर्ताहरूले पनि कहिलेकाहीं ठ्याक्कै आदेशहरू बिर्सन्छन्। यो workflow मांसपेशी स्मृति बन्न अभ्यास चाहिन्छ - तपाईं राम्रो गर्दै हुनुहुन्छ!
|
|
|
|
|
|
#### आधुनिक Git workflow
|
|
|
|
|
|
यी आधुनिक अभ्यासहरू अपनाउने विचार गर्नुहोस्:
|
|
|
|
|
|
- **Conventional Commits**: `feat:`, `fix:`, `docs:` जस्ता मानकीकृत commit सन्देश ढाँचा प्रयोग गर्नुहोस्। थप जान्न [conventionalcommits.org](https://www.conventionalcommits.org/) मा जानुहोस्।
|
|
|
- **Atomic commits**: प्रत्येक commit लाई एकल तार्किक परिवर्तनको प्रतिनिधित्व गराउनुहोस्।
|
|
|
- **बारम्बार commits**: ठूला, कम बारम्बार commits भन्दा वर्णनात्मक सन्देशहरू सहित बारम्बार commit गर्नुहोस्।
|
|
|
|
|
|
#### Commit सन्देशहरू
|
|
|
|
|
|
एक उत्कृष्ट Git commit विषय लाइनले निम्न वाक्य पूरा गर्दछ:
|
|
|
यदि लागू गरियो भने, यो commit <तपाईंको विषय लाइन यहाँ>
|
|
|
|
|
|
विषयको लागि imperative, present tense प्रयोग गर्नुहोस्: "change" होइन "changed" वा "changes"।
|
|
|
विषयमा जस्तै, शरीरमा (वैकल्पिक) पनि imperative, present tense प्रयोग गर्नुहोस्। शरीरले परिवर्तनको प्रेरणा समावेश गर्नुपर्छ र यसलाई अघिल्लो व्यवहारसँग तुलना गर्नुपर्छ। तपाईं `किन` व्याख्या गर्दै हुनुहुन्छ, `कसरी` होइन।
|
|
|
|
|
|
✅ GitHub मा केही समय बिताउनुहोस्। के तपाईं उत्कृष्ट commit सन्देश फेला पार्न सक्नुहुन्छ? के तपाईं न्यूनतम commit सन्देश फेला पार्न सक्नुहुन्छ? commit सन्देशमा के जानकारी सबैभन्दा महत्त्वपूर्ण र उपयोगी लाग्छ?
|
|
|
|
|
|
## अरूसँग काम गर्ने (मजाको भाग!)
|
|
|
|
|
|
तपाईंको टोपी समात्नुहोस् किनभने यो GitHub पूर्ण रूपमा जादुई बन्छ! 🪄 तपाईंले आफ्नो कोड व्यवस्थापन गर्न सिक्नुभयो, तर अब हामी मेरो सबैभन्दा मनपर्ने भागमा प्रवेश गर्दैछौं – संसारभरका अद्भुत व्यक्तिहरूसँग सहकार्य।
|
|
|
|
|
|
यो कल्पना गर्नुहोस्: तपाईं भोलि बिहान उठ्नुहुन्छ र देख्नुहुन्छ कि टोकियोमा कसैले तपाईंको कोड सुधार गर्यो जब तपाईं सुतिरहनुभएको थियो। त्यसपछि बर्लिनमा कसैले तपाईं अड्किएको बग ठीक गर्यो। दिउँसोसम्म, साओ पाउलोमा एक विकासकर्ताले तपाईंले कहिल्यै सोच्न नसकेको सुविधा थप्यो। यो विज्ञान कल्पना होइन – यो GitHub ब्रह्माण्डमा सामान्य मंगलवार मात्र हो!
|
|
|
|
|
|
मलाई साँच्चै उत्साहित बनाउने कुरा के हो भने तपाईंले सिक्न लागेको सहकार्य कौशल? यी EXACT workflow हरू हुन् जुन Google, Microsoft, र तपाईंको मनपर्ने स्टार्टअपहरूमा टोलीहरूले प्रत्येक दिन प्रयोग गर्छन्। तपाईं केवल एक चिसो उपकरण सिक्दै हुनुहुन्न – तपाईं सम्पूर्ण सफ्टवेयर संसारलाई सँगै काम गर्न बनाउने गोप्य भाषा सिक्दै हुनुहुन्छ।
|
|
|
|
|
|
गम्भीरतापूर्वक, जब तपाईंले कसैले तपाईंको पहिलो pull request merge गरेको अनुभव गर्नुहुन्छ, तपाईंले बुझ्नुहुनेछ किन विकासकर्ताहरू खुला स्रोतको बारेमा यति भावुक हुन्छन्। यो संसारको सबैभन्दा ठूलो, सबैभन्दा रचनात्मक टोली परियोजनाको हिस्सा भएको जस्तै हो!
|
|
|
|
|
|
> भिडियो हेर्नुहोस्
|
|
|
>
|
|
|
> [](https://www.youtube.com/watch?v=bFCM-PC3cu8)
|
|
|
|
|
|
GitHub मा चीजहरू राख्ने मुख्य कारण अन्य विकासकर्ताहरूसँग सहकार्य गर्न सम्भव बनाउनु थियो।
|
|
|
|
|
|
```mermaid
|
|
|
flowchart LR
|
|
|
A[🔍 परियोजना खोज्नुहोस्] --> B[🍴 रिपोजिटरी फोर्क गर्नुहोस्]
|
|
|
B --> C[📥 स्थानीयमा क्लोन गर्नुहोस्]
|
|
|
C --> D[🌿 शाखा सिर्जना गर्नुहोस्]
|
|
|
D --> E[✏️ परिवर्तन गर्नुहोस्]
|
|
|
E --> F[💾 परिवर्तन कमिट गर्नुहोस्]
|
|
|
F --> G[📤 शाखा पुश गर्नुहोस्]
|
|
|
G --> H[🔄 पुल अनुरोध सिर्जना गर्नुहोस्]
|
|
|
H --> I{रखवाला समीक्षा}
|
|
|
I -->|✅ स्वीकृत| J[🎉 मर्ज गर्नुहोस्!]
|
|
|
I -->|❓ परिवर्तन अनुरोध गरियो| K[📝 अपडेट गर्नुहोस्]
|
|
|
K --> F
|
|
|
J --> L[🧹 शाखाहरू सफा गर्नुहोस्]
|
|
|
|
|
|
style A fill:#e3f2fd
|
|
|
style J fill:#e8f5e8
|
|
|
style L fill:#fff3e0
|
|
|
```
|
|
|
तपाईंको रिपोजिटरीमा, `Insights > Community` मा नेभिगेट गर्नुहोस् र तपाईंको परियोजना सिफारिस गरिएको समुदाय मापदण्डहरूसँग कसरी तुलना हुन्छ हेर्नुहोस्।
|
|
|
|
|
|
तपाईंको रिपोजिटरीलाई व्यावसायिक र स्वागतयोग्य देखाउन चाहनुहुन्छ? तपाईंको रिपोजिटरीमा जानुहोस् र `Insights > Community` क्लिक गर्नुहोस्। यो चिसो सुविधा तपाईंको परियोजना GitHub समुदायले "राम्रो रिपोजिटरी अभ्यास" मान्ने कुरासँग कसरी तुलना हुन्छ देखाउँछ।
|
|
|
|
|
|
> 🎯 **तपाईंको परियोजना चम्काउने बनाउनुहोस्**: राम्रो दस्तावेजीकरण भएको राम्रो संगठित रिपोजिटरी सफा, स्वागतयोग्य storefront भएको जस्तै हो। यसले मानिसहरूलाई तपाईंको कामको हेरचाह छ भन्छ र अरूलाई योगदान गर्न प्रेरित गर्दछ!
|
|
|
|
|
|
**रिपोजिटरीलाई उत्कृष्ट बनाउने कुरा:**
|
|
|
|
|
|
| के थप्ने | किन यो महत्त्वपूर्ण छ | यसले तपाईंको लागि के गर्छ |
|
|
|
|-------------|-------------------|---------------------|
|
|
|
| **Description** | पहिलो प्रभाव महत्त्वपूर्ण छ! | मानिसहरूले तुरुन्तै तपाईंको परियोजना के गर्छ थाहा पाउँछन् |
|
|
|
| **README** | तपाईंको परियोजनाको अगाडिको पृष्ठ | नयाँ आगन्तुकहरूको लागि जस्तै एक मैत्री टुर गाइड |
|
|
|
| **Contributing Guidelines** | तपाईं सहयोग स्वागत गर्नुहुन्छ देखाउँछ | मानिसहरूले ठ्याक्कै कसरी सहयोग गर्न सकिन्छ थाहा पाउँछन् |
|
|
|
| **Code of Conduct** | मैत्रीपूर्ण स्थान सिर्जना गर्दछ | सबैले सहभागी हुन स्वागत महसुस गर्छन् |
|
|
|
| **License** | कानुनी स्पष्टता | अरूले तपाईंको कोड कसरी प्रयोग गर्न सकिन्छ थाहा पाउँछन् |
|
|
|
| **Security Policy** | तपाईं जिम्मेवार हुनुहुन्छ देखाउँछ | व्यावसायिक अभ्यास प्रदर्शन गर्दछ |
|
|
|
|
|
|
> 💡 **Pro Tip**: GitHub ले यी फाइलहरूको लागि टेम्प्लेटहरू प्रदान गर्दछ। नयाँ रिपोजिटरी बनाउँदा, यी फाइलहरू स्वचालित रूपमा उत्पन्न गर्न बक्सहरू जाँच गर्नुहोस्।
|
|
|
|
|
|
**आधुनिक GitHub सुविधाहरू अन्वेषण गर्न:**
|
|
|
|
|
|
🤖 **स्वचालन र CI/CD:**
|
|
|
- **GitHub Actions** स्वचालित परीक्षण र परिनियोजनको लागि
|
|
|
- **Dependabot** स्वचालित निर्भरता अपडेटहरूको लागि
|
|
|
|
|
|
💬 **समुदाय र परियोजना व्यवस्थापन:**
|
|
|
- **GitHub Discussions** मुद्दाहरू बाहिर समुदाय वार्तालापहरूको लागि
|
|
|
- **GitHub Projects** kanban-शैली परियोजना व्यवस्थापनको लागि
|
|
|
- **Branch protection rules** कोड गुणस्तर मापदण्ड लागू गर्न
|
|
|
|
|
|
यी सबै स्रोतहरूले नयाँ टोली सदस्यहरूलाई onboard गर्न फाइदा पुर्याउँछन्। र ती सामान्यतया नयाँ योगदानकर्ताहरूले तपाईंको कोड हेर्नु अघि हेर्ने प्रकारका चीजहरू हुन्, यो पत्ता लगाउन कि तपाईंको परियोजना उनीहरूको समय खर्च गर्नको लागि सही स्थान हो।
|
|
|
|
|
|
✅ README फाइलहरू, यद्यपि तिनीहरू तयार गर्न समय लाग्छ, व्यस्त maintainers द्वारा अक्सर बेवास्ता गरिन्छ। के तपाईं विशेष रूपमा वर्णनात्मक एक उदाहरण फेला पार्न सक्नुहुन्छ? नोट: त्यहाँ केही [उपकरणहरू राम्रो README बनाउन मद्दत गर्न](https://www.makeareadme.com/) छन् जुन तपाईंले प्रयास गर्न चाहन सक्नुहुन्छ।
|
|
|
|
|
|
### कार्य: केही कोड merge गर्नुहोस्
|
|
|
|
|
|
Contributing docs ले मानिसहरूलाई परियोजनामा योगदान गर्न मद्दत गर्दछ। यसले तपाईं कुन प्रकारका योगदानहरू खोज्दै हुनुहुन्छ र प्रक्रिया कसरी काम गर्दछ व्याख्या गर्दछ। योगदानकर्ताहरूले GitHub मा तपाईंको रिपोजिटरीमा योगदान गर्न सक्षम हुन चरणहरूको श्रृंखला मार्फत जान आवश्यक छ:
|
|
|
|
|
|
1. **तपाईंको रिपोजिटरी fork गर्नुहोस्** तपाईं सम्भवतः मानिसहरूलाई तपाईंको परियोजना _fork_ गर्न चाहनुहुन्छ। Forking भनेको तपाईंको रिपोजिटरीको प्रतिलिपि उनीहरूको GitHub प्रोफाइलमा बनाउनु हो।
|
|
|
1. **Clone**। त्यहाँबाट उनीहरूले परियोजनालाई आफ्नो स्थानीय मेसिनमा clone गर्नेछन्।
|
|
|
1. **शाखा बनाउनुहोस्**। तपाईंले उनीहरूलाई आफ्नो कामको लागि _शाखा_ बनाउन भन्न चाहनुहुन्छ।
|
|
|
1. **तिनीहरूको परिवर्तनलाई एक क्षेत्रमा केन्द्रित गर्नुहोस्**। योगदानकर्ताहरूलाई एक पटकमा एक कुरामा आफ्नो योगदान केन्द्रित गर्न भन्नुहोस् - यसले तपाईंको काम _merge_ गर्ने सम्भावना उच्च बनाउँछ। कल्पना गर्नुहोस् उनीहरूले बग फिक्स लेख्छन्, नयाँ सुविधा थप्छन्, र धेरै परीक्षणहरू अपडेट गर्छन् - के हुन्छ यदि तपाईं ३ मध्ये २ वा ३ मध्ये १ परिवर्तन मात्र लागू गर्न चाहनुहुन्छ वा सक्नुहुन्छ?
|
|
|
|
|
|
✅ शाखाहरू लेख्न र राम्रो कोड पठाउन विशेष रूपमा महत्त्वपूर्ण हुने स्थिति कल्पना गर्नुहोस्। तपाईं के उपयोग केसहरू सोच्न सक्नुहुन्छ?
|
|
|
|
|
|
> नोट, तपाईं संसारमा देख्न चाहनुभएको परिवर्तन हुनुहोस्, र आफ्नो कामको लागि शाखाहरू सिर्जना गर्नुहोस्। तपाईंले गर्ने कुनै पनि commits तपाईं हाल "checked out" शाखामा गरिनेछ। `git status` प्रयोग गरेर त्यो कुन शाखा हो हेर्नुहोस्।
|
|
|
|
|
|
आउनुहोस् योगदानकर्ताको workflow मार्फत जानुहोस्। मानौं योगदानकर्ताले रिपोजिटरी _fork_ र _clone_ गरिसकेका छन् ताकि उनीहरूको स्थानीय मेसिनमा काम गर्न तयार Git repo छ:
|
|
|
|
|
|
1. **शाखा बनाउनुहोस्**। `git branch` आदेश प्रयोग गरेर शाखा बनाउनुहोस् जसले उनीहरूले योगदान गर्न चाहेको परिवर्तनहरू समावेश गर्दछ:
|
|
|
|
|
|
```bash
|
|
|
git branch [branch-name]
|
|
|
```
|
|
|
|
|
|
> 💡 **आधुनिक दृष्टिकोण**: तपाईं नयाँ शाखा सिर्जना गर्न र एक आदेशमा स्विच गर्न सक्नुहुन्छ:
|
|
|
```bash
|
|
|
git switch -c [branch-name]
|
|
|
```
|
|
|
|
|
|
1. **काम गर्ने शाखामा स्विच गर्नुहोस्**। निर्दिष्ट शाखामा स्विच गर्नुहोस् र `git switch` प्रयोग गरेर कार्य निर्देशिका अपडेट गर्नुहोस्:
|
|
|
|
|
|
```bash
|
|
|
git switch [branch-name]
|
|
|
```
|
|
|
|
|
|
> 💡 **आधुनिक नोट**: शाखाहरू परिवर्तन गर्दा `git switch` `git checkout` को आधुनिक प्रतिस्थापन हो। यो स्पष्ट र सुरक्षात्मक छ।
|
|
|
|
|
|
1. **काम गर्नुहोस्**। यस बिन्दुमा तपाईं आफ्नो परिवर्तनहरू थप्न चाहनुहुन्छ। Git लाई यसबारे भन्न नबिर्सनुहोस् निम्न आदेशहरू प्रयोग गरेर:
|
|
|
|
|
|
```bash
|
|
|
git add .
|
|
|
git commit -m "my changes"
|
|
|
```
|
|
|
|
|
|
> ⚠️ **Commit सन्देशको गुणस्तर**: सुनिश्चित गर्नुहोस् तपाईंले आफ्नो commit लाई राम्रो नाम दिनुहुन्छ, तपाईंको लागि र तपाईंले मद्दत गरिरहेको रिपोजिटरीको maintainer को लागि। तपाईंले के परिवर्तन गर्नुभयो भन्ने बारेमा विशिष्ट हुनुहोस्!
|
|
|
|
|
|
1. **तपाईंको कामलाई `main` शाखासँग मिलाउनुहोस्**। कुनै बिन्दुमा तपाईं काम समाप्त गर्न चाहनुहुन्छ र तपाईं आफ्नो कामलाई `main` शाखाको कामसँग मिलाउन चाहनुहुन्छ। यस बीचमा `main` शाखा परिवर्तन भएको हुन सक्छ त्यसैले सुनिश्चित गर्नुहोस् तपाईंले पहिले यसलाई निम्न आदेशहरू प्रयोग गरेर नवीनतममा अपडेट गर्नुभयो:
|
|
|
|
|
|
```bash
|
|
|
git switch main
|
|
|
git pull
|
|
|
```
|
|
|
|
|
|
यस बिन्दुमा तपाईं सुनिश्चित गर्न चाहनुहुन्छ कि कुनै पनि _conflicts_, स्थिति जहाँ Git सजिलै _combine_ गर्न सक्दैन परिवर्तनहरू तपाईंको कार्य शाखामा हुन्छ। त्यसैले निम्न आदेशहरू चलाउनुहोस्:
|
|
|
|
|
|
```bash
|
|
|
git switch [branch_name]
|
|
|
git merge main
|
|
|
```
|
|
|
|
|
|
`git merge main` आदेशले `main` बाट सबै परिवर्तनहरू तपाईंको शाखामा ल्याउनेछ। आशा छ तपाईं केवल जारी राख्न सक्नुहुन्छ। यदि छैन भने, VS Code ले तपाईंलाई Git _confused_ भएको ठाउँ देखाउनेछ र तपाईंले प्रभावित फाइलहरू परिवर्तन गर्नुपर्नेछ कि कुन सामग्री सबैभन्दा सही छ।
|
|
|
|
|
|
💡 **आधुनिक विकल्प**: सफा इतिहासको लागि `git rebase` प्रयोग गर्ने विचार गर्नुहोस्:
|
|
|
```bash
|
|
|
git rebase main
|
|
|
```
|
|
|
यसले तपाईंको commits लाई नवीनतम main शाखाको शीर्षमा पुनः चलाउँछ, रेखीय इतिहास सिर्जना गर्दै।
|
|
|
|
|
|
1. **तपाईंको काम GitHub मा पठाउनुहोस्**। तपाईंको काम GitHub मा पठाउनुको मतलब दुई कुरा हो। तपाईंको शाखालाई तपाईंको रिपोजिटरीमा push गर्नुहोस् र त्यसपछि PR, Pull Request खोल्नुहोस्।
|
|
|
|
|
|
```bash
|
|
|
git push --set-upstream origin [branch-name]
|
|
|
```
|
|
|
|
|
|
माथिको आदेशले तपाईंको fork गरिएको रिपोजिटरीमा शाखा सिर्जना गर्दछ।
|
|
|
|
|
|
### 🤝 **सहकार्य कौशल जाँच: अरूसँग काम गर्न तयार?**
|
|
|
|
|
|
**आउनुहोस् तपाईं सहकार्यको बारेमा कस्तो महसुस गर्दै हुनुहुन्छ हेर्नुहोस्:**
|
|
|
- के तपाईंलाई fork र pull requests को विचार अब बुझिन्छ?
|
|
|
- शाखाहरूको साथ काम गर्ने बारेमा तपाईं अभ्यास गर्न चाहनुभएको एक कुरा के हो?
|
|
|
- अरूको परियोजनामा योगदान गर्न तपाईं कति सहज महसुस गर्नुहुन्छ?
|
|
|
|
|
|
```mermaid
|
|
|
mindmap
|
|
|
root((Git सहकार्य))
|
|
|
Branching
|
|
|
फिचर शाखाहरू
|
|
|
बग फिक्स शाखाहरू
|
|
|
प्रयोगात्मक काम
|
|
|
Pull Requests
|
|
|
कोड समीक्षा
|
|
|
छलफल
|
|
|
परीक्षण
|
|
|
Best Practices
|
|
|
स्पष्ट कमिट सन्देशहरू
|
|
|
साना केन्द्रित परिवर्तनहरू
|
|
|
राम्रो दस्तावेजीकरण
|
|
|
```
|
|
|
> **आत्मविश्वास बढाउने कुरा**: तपाईंले प्रशंसा गर्ने प्रत्येक विकासकर्ता एक पटक आफ्नो पहिलो pull request को बारेमा नर्भस थिए। GitHub समुदाय नयाँ आगन्तुकहरूलाई अत्यन्त स्वागतयोग्य छ!
|
|
|
|
|
|
1. **PR खोल्नुहोस्**। त्यसपछि, तपाईं PR खोल्न चाहनुहुन्छ। तपाईं GitHub मा fork गरिएको रिपोजिटरीमा नेभिगेट गरेर यो गर्नुहुन्छ। GitHub मा तपाईंले नयाँ PR सिर्जना गर्न चाहनुहुन्छ कि भनेर संकेत देख्नुहुनेछ, तपाईंले त्यो क्लिक गर्नुहुन्छ र तपाईंलाई commit सन्देश शीर्षक परिवर्तन गर्न, यसलाई उपयुक्त विवरण दिनको लागि इन्टरफेसमा लगिन्छ। अब तपाईंले fork गरेको रिपोजिटरीको maintainer ले यो PR देख्नेछन् र _आशा छ_ उनीहरूले तपाईंको PR लाई सराहना गर्नेछन् र _merge_ गर्नेछन्। तपाईं अब योगदानकर्ता हुनुहुन्छ, बधाई छ :)
|
|
|
|
|
|
💡 **आधुनिक टिप**: तपाईं GitHub CLI प्रयोग गरेर पनि PR सिर्जना गर्न सक्नुहुन्छ:
|
|
|
```bash
|
|
|
gh pr create --title "Your PR title" --body "Description of changes"
|
|
|
```
|
|
|
|
|
|
🔧 **PR को लागि उत्तम अभ्यासहरू**:
|
|
|
- "Fixes #123" जस्ता कीवर्डहरू प्रयोग गरेर सम्बन्धित मुद्दाहरू लिंक गर्नुहोस्।
|
|
|
- UI परिवर्तनहरूको लागि screenshots थप्नुहोस्।
|
|
|
- विशिष्ट reviewers अनुरोध गर्नुहोस्।
|
|
|
- काम-प्रगति को लागि draft PRs प्रयोग गर्नुहोस्।
|
|
|
- समीक्षा अनुरोध गर्नु अघि सबै CI जाँचहरू पास सुनिश्चित गर्नुहोस्।
|
|
|
1. **सफा गर्नुहोस्**। PR सफलतापूर्वक मर्ज गरेपछि आफ्नो शाखा सफा गर्नु राम्रो अभ्यास मानिन्छ। तपाईंले आफ्नो स्थानीय शाखा र GitHub मा पठाएको शाखा दुवै सफा गर्न चाहनुहुन्छ। सुरुमा, यसलाई स्थानीय रूपमा निम्न आदेश प्रयोग गरेर मेटाउनुहोस्:
|
|
|
|
|
|
```bash
|
|
|
git branch -d [branch-name]
|
|
|
```
|
|
|
|
|
|
त्यसपछि, फोर्क गरिएको रिपोजिटरीको GitHub पृष्ठमा जानुहोस् र तपाईंले पठाएको रिमोट शाखा हटाउनुहोस्।
|
|
|
|
|
|
`Pull request` भन्ने शब्द अलि अनौठो लाग्न सक्छ किनभने वास्तवमा तपाईं आफ्नो परिवर्तनहरू प्रोजेक्टमा पठाउन चाहनुहुन्छ। तर मर्ज गर्नु अघि प्रोजेक्टको "मुख्य" शाखासँग तपाईंको परिवर्तनहरू समायोजन गर्न मर्मतकर्ता (प्रोजेक्ट मालिक) वा कोर टोलीले विचार गर्नुपर्छ, त्यसैले तपाईं वास्तवमा मर्मतकर्ताबाट परिवर्तन निर्णयको अनुरोध गर्दै हुनुहुन्छ।
|
|
|
|
|
|
Pull request भनेको शाखामा गरिएका फरकहरू तुलना र छलफल गर्ने ठाउँ हो, जसमा समीक्षा, टिप्पणी, एकीकृत परीक्षणहरू, र थप धेरै समावेश छन्। राम्रो pull request ले लगभग commit message जस्तै नियमहरू पालना गर्दछ। तपाईं आफ्नो कामले कुनै समस्या समाधान गरेमा, issue tracker मा कुनै मुद्दाको सन्दर्भ थप्न सक्नुहुन्छ। यो `#` पछि तपाईंको मुद्दाको नम्बर लेखेर गरिन्छ। उदाहरणका लागि `#97`।
|
|
|
|
|
|
🤞 सबै जाँच पास होस् र प्रोजेक्ट मालिक(हरू)ले तपाईंको परिवर्तनहरू प्रोजेक्टमा मर्ज गरून् 🤞
|
|
|
|
|
|
GitHub मा रहेको सम्बन्धित रिमोट शाखाबाट सबै नयाँ commits सहित आफ्नो हालको स्थानीय कार्य शाखा अपडेट गर्नुहोस्:
|
|
|
|
|
|
`git pull`
|
|
|
|
|
|
## ओपन सोर्समा योगदान गर्नुहोस् (तपाईंको प्रभाव पार्ने मौका!)
|
|
|
|
|
|
के तपाईं केही यस्तो गर्न तयार हुनुहुन्छ जसले तपाईंको दिमागलाई पूर्ण रूपमा चकित पार्नेछ? 🤯 आउनुहोस्, ओपन सोर्स प्रोजेक्टहरूमा योगदान गर्ने कुरा गरौं – र म यो तपाईंलाई साझा गर्न पाउँदा उत्साहित छु!
|
|
|
|
|
|
यो तपाईंको असाधारण केहि भाग बन्ने मौका हो। कल्पना गर्नुहोस्, ती उपकरणहरू सुधार गर्दै जुन लाखौं विकासकर्ताहरूले हरेक दिन प्रयोग गर्छन्, वा तपाईंका साथीहरूले मन पराउने एपमा बग समाधान गर्दै। यो केवल सपना मात्र होइन – यो नै ओपन सोर्स योगदानको सार हो!
|
|
|
|
|
|
यो सोच्दा मलाई हरेक पटक रोमाञ्चक महसुस हुन्छ: तपाईंले सिक्दै गरेको हरेक उपकरण – तपाईंको कोड एडिटर, हामीले अन्वेषण गर्ने फ्रेमवर्कहरू, यहाँसम्म कि तपाईंले यो पढ्न प्रयोग गरिरहेको ब्राउजर – कुनै समय कसैको पहिलो योगदानबाट सुरु भएको थियो। त्यो अद्भुत विकासकर्ता जसले तपाईंको मनपर्ने VS Code एक्सटेन्सन बनायो? उनी पनि कहिल्यै "create pull request" क्लिक गर्दा डराएका थिए, ठीक तपाईं जस्तै।
|
|
|
|
|
|
र यहाँ सबैभन्दा सुन्दर कुरा छ: ओपन सोर्स समुदाय इन्टरनेटको सबैभन्दा ठूलो सामूहिक अँगालो जस्तै हो। धेरैजसो प्रोजेक्टहरूले नयाँ आगन्तुकहरूको खोजी गर्छन् र "good first issue" ट्याग भएका मुद्दाहरू राख्छन्, विशेष गरी तपाईं जस्ता व्यक्तिहरूका लागि! मर्मतकर्ताहरू नयाँ योगदानकर्ताहरू देख्दा साँच्चै उत्साहित हुन्छन् किनभने उनीहरूलाई आफ्नै पहिलो कदम सम्झना हुन्छ।
|
|
|
|
|
|
```mermaid
|
|
|
flowchart TD
|
|
|
A[🔍 गिटहब अन्वेषण गर्नुहोस्] --> B[🏷️ "सुरु गर्न राम्रो समस्या" फेला पार्नुहोस्]
|
|
|
B --> C[📖 योगदान दिशानिर्देशहरू पढ्नुहोस्]
|
|
|
C --> D[🍴 रिपोजिटरी फोर्क गर्नुहोस्]
|
|
|
D --> E[💻 स्थानीय वातावरण सेट गर्नुहोस्]
|
|
|
E --> F[🌿 फिचर ब्रान्च सिर्जना गर्नुहोस्]
|
|
|
F --> G[✨ आफ्नो योगदान गर्नुहोस्]
|
|
|
G --> H[🧪 आफ्नो परिवर्तनहरू परीक्षण गर्नुहोस्]
|
|
|
H --> I[📝 स्पष्ट कमिट लेख्नुहोस्]
|
|
|
I --> J[📤 पुश गर्नुहोस् र PR सिर्जना गर्नुहोस्]
|
|
|
J --> K[💬 प्रतिक्रिया संग संलग्न हुनुहोस्]
|
|
|
K --> L[🎉 मर्ज भयो! तपाईं योगदानकर्ता हुनुहुन्छ!]
|
|
|
L --> M[🌟 अर्को समस्या फेला पार्नुहोस्]
|
|
|
|
|
|
style A fill:#e1f5fe
|
|
|
style L fill:#c8e6c9
|
|
|
style M fill:#fff59d
|
|
|
```
|
|
|
तपाईं यहाँ केवल कोड सिक्दै हुनुहुन्न – तपाईं एक विश्वव्यापी निर्माणकर्ताहरूको परिवारमा सामेल हुन तयार हुँदै हुनुहुन्छ, जसले हरेक दिन सोच्दछन् "डिजिटल संसारलाई अलिकति राम्रो कसरी बनाउन सकिन्छ?" क्लबमा स्वागत छ! 🌟
|
|
|
|
|
|
सुरुमा, GitHub मा तपाईंलाई चासो लाग्ने र जसमा तपाईं परिवर्तन गर्न चाहनुहुन्छ, त्यस्तो रिपोजिटरी (वा **repo**) खोजौं। तपाईं यसको सामग्री आफ्नो मेसिनमा प्रतिलिपि गर्न चाहनुहुन्छ।
|
|
|
|
|
|
✅ 'सुरुवाती-अनुकूल' रिपोजिटरीहरू खोज्नको लागि [ट्याग 'good-first-issue' द्वारा खोज्नुहोस्](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/)।
|
|
|
|
|
|

|
|
|
|
|
|
कोड प्रतिलिपि गर्ने धेरै तरिकाहरू छन्। एउटा तरिका भनेको रिपोजिटरीको सामग्री "क्लोन" गर्नु हो, HTTPS, SSH, वा GitHub CLI (कमाण्ड लाइन इन्टरफेस) प्रयोग गरेर।
|
|
|
|
|
|
तपाईंको टर्मिनल खोल्नुहोस् र यसरी रिपोजिटरी क्लोन गर्नुहोस्:
|
|
|
```bash
|
|
|
# HTTPS प्रयोग गर्दै
|
|
|
git clone https://github.com/ProjectURL
|
|
|
|
|
|
# SSH प्रयोग गर्दै (SSH कुञ्जी सेटअप आवश्यक छ)
|
|
|
git clone git@github.com:username/repository.git
|
|
|
|
|
|
# GitHub CLI प्रयोग गर्दै
|
|
|
gh repo clone username/repository
|
|
|
```
|
|
|
|
|
|
प्रोजेक्टमा काम गर्न, सही फोल्डरमा स्विच गर्नुहोस्:
|
|
|
`cd ProjectURL`
|
|
|
|
|
|
तपाईं सम्पूर्ण प्रोजेक्ट यसरी पनि खोल्न सक्नुहुन्छ:
|
|
|
- **[GitHub Codespaces](https://github.com/features/codespaces)** - ब्राउजरमा VS Code सहित GitHub को क्लाउड विकास वातावरण
|
|
|
- **[GitHub Desktop](https://desktop.github.com/)** - Git अपरेसनहरूको लागि GUI एप्लिकेसन
|
|
|
- **[GitHub.dev](https://github.dev)** - कुनै पनि GitHub रिपोमा `.` कुञ्जी थिचेर ब्राउजरमा VS Code खोल्नुहोस्
|
|
|
- **VS Code** GitHub Pull Requests एक्सटेन्सन सहित
|
|
|
|
|
|
अन्तमा, तपाईं कोडलाई जिप गरिएको फोल्डरमा डाउनलोड गर्न सक्नुहुन्छ।
|
|
|
|
|
|
### GitHub का केही थप रोचक कुरा
|
|
|
|
|
|
तपाईं GitHub मा कुनै पनि सार्वजनिक रिपोजिटरीलाई स्टार, वाच, र/वा "फोर्क" गर्न सक्नुहुन्छ। तपाईंले स्टार गरेका रिपोजिटरीहरूलाई शीर्ष-दायाँ ड्रप-डाउन मेनुमा फेला पार्न सक्नुहुन्छ। यो कोडको लागि बुकमार्क जस्तै हो।
|
|
|
|
|
|
प्रोजेक्टहरूमा प्रायः GitHub मा "Issues" ट्याबमा (वा अन्यत्र संकेत गरिएको भए) समस्या ट्र्याकर हुन्छ, जहाँ मानिसहरूले प्रोजेक्टसँग सम्बन्धित समस्याहरूको बारेमा छलफल गर्छन्। र Pull Requests ट्याबमा मानिसहरूले प्रगतिमा रहेका परिवर्तनहरूको बारेमा छलफल र समीक्षा गर्छन्।
|
|
|
|
|
|
प्रोजेक्टहरूमा फोरम, मेलिङ लिस्ट, वा Slack, Discord वा IRC जस्ता च्याट च्यानलहरूमा पनि छलफल हुन सक्छ।
|
|
|
|
|
|
🔧 **आधुनिक GitHub सुविधाहरू**:
|
|
|
- **GitHub Discussions** - समुदायका कुराकानीहरूको लागि बिल्ट-इन फोरम
|
|
|
- **GitHub Sponsors** - मर्मतकर्ताहरूलाई आर्थिक रूपमा समर्थन गर्नुहोस्
|
|
|
- **Security tab** - भल्नरेबिलिटी रिपोर्टहरू र सुरक्षा सल्लाहहरू
|
|
|
- **Actions tab** - स्वचालित वर्कफ्लोहरू र CI/CD पाइपलाइनहरू हेर्नुहोस्
|
|
|
- **Insights tab** - योगदानकर्ताहरू, कमिटहरू, र प्रोजेक्ट स्वास्थ्यको बारेमा एनालिटिक्स
|
|
|
- **Projects tab** - GitHub को बिल्ट-इन प्रोजेक्ट व्यवस्थापन उपकरणहरू
|
|
|
|
|
|
✅ आफ्नो नयाँ GitHub रिपो वरिपरि हेर्नुहोस् र केही कुरा प्रयास गर्नुहोस्, जस्तै सेटिङहरू सम्पादन गर्नु, आफ्नो रिपोमा जानकारी थप्नु, प्रोजेक्ट सिर्जना गर्नु (जस्तै Kanban बोर्ड), र स्वचालनको लागि GitHub Actions सेट गर्नुहोस्। तपाईंले धेरै कुरा गर्न सक्नुहुन्छ!
|
|
|
|
|
|
---
|
|
|
|
|
|
## 🚀 चुनौती
|
|
|
|
|
|
ठिक छ, अब तपाईंको नयाँ GitHub सुपरपावरहरू परीक्षण गर्ने समय हो! 🚀 यहाँ एउटा चुनौती छ जसले सबै कुरा सबैभन्दा सन्तोषजनक तरिकामा क्लिक गराउनेछ:
|
|
|
|
|
|
एउटा साथी (वा त्यो परिवार सदस्य जसले सधैं सोध्छ "तपाईं यो कम्प्युटरको सामानमा के गर्दै हुनुहुन्छ?") समात्नुहोस् र सँगै सहकार्यात्मक कोडिङ साहसिक कार्यमा लाग्नुहोस्! यहीँ वास्तविक जादू हुन्छ – एउटा प्रोजेक्ट सिर्जना गर्नुहोस्, उनीहरूलाई यसलाई फोर्क गर्न दिनुहोस्, केही शाखाहरू बनाउनुहोस्, र तपाईं बन्न लागेका प्रोफेसनलहरू जस्तै परिवर्तनहरू मर्ज गर्नुहोस्।
|
|
|
|
|
|
म झूट बोल्दिनँ – तपाईंले कुनै बिन्दुमा हाँस्नुहुनेछ (विशेष गरी जब तपाईं दुवैले एउटै लाइन परिवर्तन गर्न प्रयास गर्नुहुन्छ), सायद अलमलमा टाउको खजाउनुहुनेछ, तर तपाईंले ती अद्भुत "आहा!" क्षणहरू पक्कै पाउनुहुनेछ जसले सबै सिकाइलाई सार्थक बनाउँछ। साथै, कसैसँग त्यो पहिलो सफल मर्ज साझा गर्नुमा केही विशेष कुरा हुन्छ – यो तपाईंले कति टाढा आइपुग्नुभएको छ भन्ने सानो उत्सव जस्तै हो!
|
|
|
|
|
|
अझै कोडिङ साथी छैन? कुनै चिन्ता छैन! GitHub समुदायमा नयाँ व्यक्तिहरूलाई स्वागत गर्ने अद्भुत मानिसहरूले भरिएको छ। "good first issue" लेबल भएका रिपोजिटरीहरू खोज्नुहोस् – तिनीहरू मूलतः भन्छन् "नमस्ते सुरुवातकर्ताहरू, हामीसँग सिक्न आउनुहोस्!" यो कति अद्भुत छ?
|
|
|
|
|
|
## पोस्ट-लेक्चर क्विज
|
|
|
[पोस्ट-लेक्चर क्विज](https://ff-quizzes.netlify.app/web/en/)
|
|
|
|
|
|
## समीक्षा गर्नुहोस् र सिक्दै रहनुहोस्
|
|
|
|
|
|
वाह! 🎉 हेर्नुहोस् तपाईं – तपाईंले GitHub को आधारभूत कुराहरू एकदम च्याम्पियन जस्तै जित्नुभयो! यदि तपाईंको दिमाग अहिले अलि भरिएको महसुस हुन्छ भने, त्यो पूर्ण रूपमा सामान्य हो र इमानदारीपूर्वक राम्रो संकेत हो। तपाईंले अहिले ती उपकरणहरू सिक्नुभयो जसलाई मैले सुरुमा सहज महसुस गर्न हप्ताहरू लाग्यो।
|
|
|
|
|
|
Git र GitHub अविश्वसनीय रूपमा शक्तिशाली छन् (गम्भीर रूपमा शक्तिशाली), र मैले चिनेका हरेक विकासकर्ताले – जसले अहिले जादूगर जस्तै देखिन्छन् – यसलाई सबै क्लिक गर्नु अघि अभ्यास र अलमल गर्नुपरेको थियो। तपाईंले यो पाठ पूरा गर्नुभएको तथ्यले तपाईंलाई विकासकर्ताको उपकरणको सबैभन्दा महत्त्वपूर्ण उपकरणहरू मध्ये केहीमा महारत हासिल गर्नको लागि पहिले नै बाटोमा राखेको छ।
|
|
|
|
|
|
यहाँ तपाईंलाई अभ्यास गर्न र अझ अद्भुत बन्न मद्दत गर्ने केही उत्कृष्ट स्रोतहरू छन्:
|
|
|
|
|
|
- [ओपन सोर्स सफ्टवेयरमा योगदान गर्ने गाइड](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – फरक पार्ने तपाईंको रोडम्याप
|
|
|
- [Git cheatsheet](https://training.github.com/downloads/github-git-cheat-sheet/) – छिटो सन्दर्भको लागि यो हातमा राख्नुहोस्!
|
|
|
|
|
|
र सम्झनुहोस्: अभ्यासले प्रगति ल्याउँछ, पूर्णता होइन! तपाईंले Git र GitHub जति धेरै प्रयोग गर्नुहुन्छ, यो त्यति नै स्वाभाविक बन्छ। GitHub ले तपाईंलाई सुरक्षित वातावरणमा अभ्यास गर्न दिने केही अद्भुत अन्तरक्रियात्मक पाठ्यक्रमहरू सिर्जना गरेको छ:
|
|
|
|
|
|
- [GitHub को परिचय](https://github.com/skills/introduction-to-github)
|
|
|
- [Markdown प्रयोग गरेर संवाद गर्नुहोस्](https://github.com/skills/communicate-using-markdown)
|
|
|
- [GitHub Pages](https://github.com/skills/github-pages)
|
|
|
- [मर्ज द्वन्द्व व्यवस्थापन गर्नुहोस्](https://github.com/skills/resolve-merge-conflicts)
|
|
|
|
|
|
**साहसी महसुस गर्दै हुनुहुन्छ? यी आधुनिक उपकरणहरू जाँच गर्नुहोस्:**
|
|
|
- [GitHub CLI डकुमेन्टेसन](https://cli.github.com/manual/) – जब तपाईं कमाण्ड-लाइन जादूगर जस्तो महसुस गर्न चाहनुहुन्छ
|
|
|
- [GitHub Codespaces डकुमेन्टेसन](https://docs.github.com/en/codespaces) – क्लाउडमा कोड गर्नुहोस्!
|
|
|
- [GitHub Actions डकुमेन्टेसन](https://docs.github.com/en/actions) – सबै कुरा स्वचालित गर्नुहोस्
|
|
|
- [Git का उत्कृष्ट अभ्यासहरू](https://www.atlassian.com/git/tutorials/comparing-workflows) – तपाईंको वर्कफ्लो खेललाई स्तरवृद्धि गर्नुहोस्
|
|
|
|
|
|
## GitHub Copilot एजेन्ट चुनौती 🚀
|
|
|
|
|
|
एजेन्ट मोड प्रयोग गरेर निम्न चुनौती पूरा गर्नुहोस्:
|
|
|
|
|
|
**विवरण:** तपाईंले यस पाठमा सिकेको सम्पूर्ण GitHub वर्कफ्लो प्रदर्शन गर्ने सहकार्यात्मक वेब विकास प्रोजेक्ट सिर्जना गर्नुहोस्। यो चुनौतीले तपाईंलाई रिपोजिटरी सिर्जना, सहकार्य सुविधाहरू, र आधुनिक Git वर्कफ्लोहरू वास्तविक संसारको परिदृश्यमा अभ्यास गर्न मद्दत गर्नेछ।
|
|
|
|
|
|
**प्रेरणा:** "वेब विकास स्रोतहरू" प्रोजेक्टको लागि नयाँ सार्वजनिक GitHub रिपोजिटरी सिर्जना गर्नुहोस्। रिपोजिटरीमा HTML, CSS, JavaScript आदि श्रेणीहरूद्वारा व्यवस्थित उपयोगी वेब विकास उपकरण र स्रोतहरूको सूची सहित राम्रो संरचित README.md फाइल समावेश गर्नुहोस्। लाइसेन्स, योगदान दिशानिर्देशहरू, र आचार संहिता सहित उचित समुदाय मापदण्डहरू सहित रिपोजिटरी सेट गर्नुहोस्। CSS स्रोतहरू थप्नको लागि एउटा शाखा र JavaScript स्रोतहरू थप्नको लागि अर्को शाखा सिर्जना गर्नुहोस्। प्रत्येक शाखामा वर्णनात्मक कमिट सन्देशहरू सहित कमिटहरू गर्नुहोस्, त्यसपछि परिवर्तनहरू मुख्यमा मर्ज गर्न pull requests सिर्जना गर्नुहोस्। Issues, Discussions जस्ता GitHub सुविधाहरू सक्षम गर्नुहोस्, र स्वचालित जाँचहरूको लागि आधारभूत GitHub Actions वर्कफ्लो सेट गर्नुहोस्।
|
|
|
|
|
|
## असाइनमेन्ट
|
|
|
|
|
|
तपाईंको मिशन, यदि तपाईंले स्वीकार गर्नुभयो भने: GitHub Skills मा [GitHub को परिचय](https://github.com/skills/introduction-to-github) पाठ्यक्रम पूरा गर्नुहोस्। यो अन्तरक्रियात्मक पाठ्यक्रमले तपाईंलाई सुरक्षित, निर्देशित वातावरणमा तपाईंले सिकेका सबै कुरा अभ्यास गर्न दिनेछ। साथै, तपाईंले समाप्त गर्दा एकदम कूल ब्याज पाउनुहुनेछ! 🏅
|
|
|
|
|
|
**अझै चुनौतीहरूको लागि तयार महसुस गर्दै हुनुहुन्छ?**
|
|
|
- आफ्नो GitHub खाताको लागि SSH प्रमाणीकरण सेट गर्नुहोस् (अब पासवर्डहरू छैनन्!)
|
|
|
- आफ्नो दैनिक Git अपरेसनहरूको लागि GitHub CLI प्रयोग गर्ने प्रयास गर्नुहोस्
|
|
|
- GitHub Actions वर्कफ्लो सहित रिपोजिटरी सिर्जना गर्नुहोस्
|
|
|
- यो नै रिपोजिटरी क्लाउड-आधारित सम्पादकमा खोल्दै GitHub Codespaces अन्वेषण गर्नुहोस्
|
|
|
|
|
|
---
|
|
|
|
|
|
## 🚀 तपाईंको GitHub मास्टरी टाइमलाइन
|
|
|
|
|
|
### ⚡ **अर्को ५ मिनेटमा तपाईं के गर्न सक्नुहुन्छ**
|
|
|
- [ ] यो रिपोजिटरी र तपाईंलाई चासो लाग्ने अन्य ३ प्रोजेक्टहरू स्टार गर्नुहोस्
|
|
|
- [ ] आफ्नो GitHub खातामा दुई-कारक प्रमाणीकरण सेट गर्नुहोस्
|
|
|
- [ ] आफ्नो पहिलो रिपोजिटरीको लागि साधारण README सिर्जना गर्नुहोस्
|
|
|
- [ ] तपाईंलाई प्रेरित गर्ने ५ विकासकर्ताहरूलाई फलो गर्नुहोस्
|
|
|
|
|
|
### 🎯 **यो घण्टामा तपाईं के पूरा गर्न सक्नुहुन्छ**
|
|
|
- [ ] पोस्ट-लेक्चर क्विज पूरा गर्नुहोस् र आफ्नो GitHub यात्रामा विचार गर्नुहोस्
|
|
|
- [ ] पासवर्ड-रहित GitHub प्रमाणीकरणको लागि SSH कुञ्जीहरू सेट गर्नुहोस्
|
|
|
- [ ] उत्कृष्ट कमिट सन्देश सहित आफ्नो पहिलो अर्थपूर्ण कमिट सिर्जना गर्नुहोस्
|
|
|
- [ ] GitHub को "Explore" ट्याब अन्वेषण गर्नुहोस् र ट्रेन्डिङ प्रोजेक्टहरू पत्ता लगाउनुहोस्
|
|
|
- [ ] रिपोजिटरी फोर्क गर्ने र सानो परिवर्तन गर्ने अभ्यास गर्नुहोस्
|
|
|
|
|
|
### 📅 **तपाईंको हप्ताभरि GitHub साहसिक कार्य**
|
|
|
- [ ] GitHub Skills पाठ्यक्रमहरू (GitHub को परिचय, Markdown) पूरा गर्नुहोस्
|
|
|
- [ ] ओपन सोर्स प्रोजेक्टमा आफ्नो पहिलो pull request गर्नुहोस्
|
|
|
- [ ] आफ्नो काम प्रदर्शन गर्न GitHub Pages साइट सेट गर्नुहोस्
|
|
|
- [ ] तपाईंलाई चासो लाग्ने प्रोजेक्टहरूमा GitHub Discussions मा सामेल हुनुहोस्
|
|
|
- [ ] उचित समुदाय मापदण्डहरू (README, लाइसेन्स, आदि) सहित रिपोजिटरी सिर्जना गर्नुहोस्
|
|
|
- [ ] क्लाउड-आधारित विकासको लागि GitHub Codespaces प्रयास गर्नुहोस्
|
|
|
|
|
|
### 🌟 **तपाईंको महिनाभरि रूपान्तरण**
|
|
|
- [ ] ३ फरक ओपन सोर्स प्रोजेक्टहरूमा योगदान गर्नुहोस्
|
|
|
- [ ] GitHub मा नयाँ व्यक्तिलाई मार्गदर्शन गर्नुहोस् (अर्कालाई सहयोग गर्नुहोस्!)
|
|
|
- [ ] GitHub Actions को साथ स्वचालित वर्कफ्लोहरू सेट गर्नुहोस्
|
|
|
- [ ] आफ्नो GitHub योगदानहरू प्रदर्शन गर्ने पोर्टफोलियो निर्माण गर्नुहोस्
|
|
|
- [ ] Hacktoberfest वा यस्तै सामुदायिक घटनाहरूमा भाग लिनुहोस्
|
|
|
- [ ] अरूले योगदान गर्ने आफ्नो प्रोजेक्टको मर्मतकर्ता बन्नुहोस्
|
|
|
|
|
|
### 🎓 **अन्तिम GitHub मास्टरी चेक-इन**
|
|
|
|
|
|
**तपाईंले कति टाढा आइपुग्नुभएको छ भन्ने कुरा मनाउनुस्:**
|
|
|
- GitHub प्रयोग गर्ने तपाईंको मनपर्ने कुरा के हो?
|
|
|
- कुन सहकार्य सुविधा तपाईंलाई सबैभन्दा रोमाञ्चक लाग्छ?
|
|
|
- ओपन सोर्समा योगदान गर्न तपाईं कति आत्मविश्वासी महसुस गर्नुहुन्छ?
|
|
|
- तपाईंले योगदान गर्न चाहनुभएको पहिलो प्रोजेक्ट कुन हो?
|
|
|
|
|
|
```mermaid
|
|
|
journey
|
|
|
title तपाईंको GitHub आत्मविश्वास यात्रा
|
|
|
section आज
|
|
|
नर्भस: 3: तपाईं
|
|
|
जिज्ञासु: 4: तपाईं
|
|
|
उत्साहित: 5: तपाईं
|
|
|
section यो हप्ता
|
|
|
अभ्यास गर्दै: 4: तपाईं
|
|
|
योगदान गर्दै: 5: तपाईं
|
|
|
जडान गर्दै: 5: तपाईं
|
|
|
section अर्को महिना
|
|
|
सहकार्य गर्दै: 5: तपाईं
|
|
|
नेतृत्व गर्दै: 5: तपाईं
|
|
|
अरूलाई प्रेरित गर्दै: 5: तपाईं
|
|
|
```
|
|
|
> 🌍 **विश्वव्यापी विकासकर्ता समुदायमा स्वागत छ!** तपाईंले अब विश्वभरका लाखौं विकासकर्ताहरूसँग सहकार्य गर्न उपकरणहरू पाउनुभएको छ। तपाईंको पहिलो योगदान सानो देखिन सक्छ, तर सम्झनुहोस् - हरेक प्रमुख ओपन सोर्स प्रोजेक्ट कसैको पहिलो कमिटबाट सुरु भएको थियो। प्रश्न यो होइन कि तपाईंले प्रभाव पार्नुहुनेछ कि होइन, तर कुन अद्भुत प्रोजेक्टले तपाईंको अनौठो दृष्टिकोणबाट पहिलो फाइदा लिनेछ! 🚀
|
|
|
|
|
|
स्मरण गर्नुहोस्: हरेक विशेषज्ञ एक पटक सुरुवातकर्ता थिए। तपाईंले यो गर्न सक्नुहुन्छ! 💪
|
|
|
|
|
|
---
|
|
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
|
**अस्वीकरण**:
|
|
|
यो दस्तावेज़ AI अनुवाद सेवा [Co-op Translator](https://github.com/Azure/co-op-translator) प्रयोग गरेर अनुवाद गरिएको छ। हामी शुद्धताको लागि प्रयास गर्छौं, तर कृपया ध्यान दिनुहोस् कि स्वचालित अनुवादहरूमा त्रुटिहरू वा अशुद्धताहरू हुन सक्छ। यसको मूल भाषा मा रहेको मूल दस्तावेज़लाई आधिकारिक स्रोत मानिनुपर्छ। महत्वपूर्ण जानकारीको लागि, व्यावसायिक मानव अनुवाद सिफारिस गरिन्छ। यस अनुवादको प्रयोगबाट उत्पन्न हुने कुनै पनि गलतफहमी वा गलत व्याख्याको लागि हामी जिम्मेवार हुने छैनौं।
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |