प्रौद्योगिकी साझेदारी

गिट ट्युटोरियल

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Git वितरितं संस्करणनियन्त्रणसाधनम्

Git इति एकः मुक्तस्रोतवितरितसंस्करणनियन्त्रणप्रणाली अस्ति या अत्यल्पात् अत्यन्तं बृहत्परियोजनानां परियोजनानां संस्करणप्रबन्धनं कुशलतया उच्चगत्या च सम्भालितुं शक्नोति ।

Git वितरितः अस्ति । वयं Git इत्यस्य उपयोगं कुर्मः तथा च केवलं सर्वेषां परिवर्तनानां आदानप्रदानस्य सुविधायै केन्द्रीयसर्वरः अस्ति, परन्तु अस्य सर्वरस्य स्थितिः अस्माकं प्रत्येकस्य PC इत्यस्य समाना एव अस्ति । वयम् अस्य सर्वरस्य उपयोगं विकासकस्य PC रूपेण कर्तुं शक्नुमः, केवलं तदर्थं यत् सर्वे सङ्गणकं न निरुद्धं विना परस्परं सहजतया संवादं कर्तुं शक्नुवन्ति । अद्यापि सर्वे एतत् सर्वरं विना कार्यं कर्तुं शक्नुवन्ति, परन्तु "विनिमय" परिवर्तनं असुविधाजनकम् अस्ति ।
अत्र चित्रविवरणं सम्मिलितं कुर्वन्तु

संस्करण नियन्त्रक दृष्टिकोण

केन्द्रीकृतसंस्करणनियन्त्रणसाधनम्

केन्द्रीकृतसंस्करणनियन्त्रणसाधनं, संस्करणपुस्तकालयः केन्द्रीयसर्वरमध्ये संगृहीतः भवति, कार्यं कुर्वन्तः सर्वे केन्द्रीयसर्वरतः कोडं डाउनलोड् कुर्वन्ति । व्यक्तिगतसंशोधनं केन्द्रीयभण्डारं प्रति प्रस्तूयताम्। यथा : एसवीएन, सीवीएस
अत्र चित्रविवरणं सम्मिलितं कुर्वन्तु

वितरितं संस्करणनियन्त्रणसाधनम्

वितरितसंस्करणनियन्त्रणप्रणाल्यां "केन्द्रीयसर्वरः" नास्ति । यदा बहुजनाः सहकार्यं कुर्वन्ति तदा तेषां केवलं स्वस्य परिवर्तनं परस्परं धक्कायितुं आवश्यकं भवति, ततः ते परस्परं परिवर्तनं द्रष्टुं शक्नुवन्ति । यथा- गिट्

सामान्यादेशाः

गिट् कार्यप्रवाहः
अत्र चित्रविवरणं सम्मिलितं कुर्वन्तु

  • क्लोन इति: दूरस्थभण्डारतः स्थानीयभण्डारं प्रति कोडं क्लोन् कुर्वन्तु

  • चेकआउट: स्थानीयगोदामात् गोदामशाखां पश्यन्तु परिवर्तनं च कुर्वन्तु

  • संयोजयति: कोडं प्रस्तुतीकरणात् पूर्वं मञ्चनक्षेत्रे प्रस्तूयताम्

  • प्रविश्: स्थानीयगोदामे प्रस्तुतं कुर्वन्तु, तथा च परिवर्तितानि ऐतिहासिकसंस्करणं स्थानीयगोदामे रक्षन्तु

  • उपानी: दूरस्थपुस्तकालयात् स्थानीयगोदामं प्रति विना किमपि विलयनक्रियाम् आनयन्तु।

  • आकर्षति: दूरस्थपुस्तकालयात् स्थानीयपुस्तकालयं प्रति आकर्षयन्तु तथा च स्वयमेव विलीनं कुर्वन्तु (विलयः), ततः कार्यक्षेत्रे स्थापयतु, यत् तुल्यम् अस्तिfetch merge

  • नोद: कोडं दूरस्थं गोदामं प्रति धक्कायन्तु

  • git config:विन्याससूचना

    # 设置用户信息
    git config --global user.name "userName"
    git config --global user.email "Email"
    
    # 查看配置信息
    git config --global user.name
    git config --global user.email
    
  • alias: विन्यास आदेश उपनाम, in~/.bashrcविन्यासं योजयन्तु परिवर्तनस्य समाप्तेः अनन्तरं तत् निष्पादयितुं आवश्यकम् ।source ~/.bashrc

    # 部分windows系统不允许用户创建.开头的文件,可以在gitBash中执行
    touch ~/.bashrc
    
    # 在~/.bashrc中添加内容,输出git提交日志
    alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
    
  • git init: वर्तमाननिर्देशिकां git गोदामरूपेण आरभत, सफलनिष्पादनस्य अनन्तरं बहुविधं भविष्यति.gitपुटम्

  • git status: परिवर्तनस्य स्थितिः पश्यन्तु (अस्थायी भण्डारण क्षेत्र, कार्यक्षेत्र)
    अत्र चित्रविवरणं सम्मिलितं कुर्वन्तु

  • git add: कार्यक्षेत्रे एकस्मिन् वा अधिकसञ्चिकायां परिवर्तनं मञ्चनक्षेत्रे योजयन्तु

    git add 单个文件名 | 通配符
    
    # 将所有修改加入到暂存区
    git add .
    
  • git commit: मञ्चनक्षेत्रस्य सामग्रीं स्थानीयगोदामस्य वर्तमानशाखायां प्रस्तुतं कुर्वन्तु,git commit -m '注释内容'

  • git log: प्रस्तुतीकरणवृत्तलेखाः पश्यन्तु उपनामानि च विन्यस्यन्तुgit-log

    git log [option]
    	--all 显式所有分支
    	--pretty=oneline 将提交信息显示为一行
    	--abbrev-commit 使得输出的commitId更简短
    	--graph 以图的形式显示
    
  • git reset:संस्करणं रोलबैक

    # 查看已经删除的记录,可以看到已经删除的提交记录
    git reflog
    
    # 版本切换,commitId可以通过git log查看
    git reset --hard commitId
    
  • git branch: स्थानीयशाखाः पश्यन्तु इति अर्थः अस्ति यत् मुख्यविकासरेखातः कार्यं पृथक् कृत्वा दोषान् निवारयितुं नूतनानि विशेषतानि विकसितुं शक्यन्ते, येन मुख्यरेखा प्रभाविता न भवति।

    • निपुण(उत्पादन) शाखा : ऑनलाइन-शाखा, मुख्यशाखा, लघु-मध्यम-आकारस्य परियोजनानां अनुरूपं शाखा ऑनलाइन-चलित-अनुप्रयोगरूपेण

    • रचयति(रचयति)। चरणविकासः सम्पन्नः भवति, तस्य मुख्यशाखायां विलीनीकरणं कृत्वा ऑनलाइन गन्तुं सज्जं करणीयम्।

    • feature/xxx branch: develop तः निर्मितः शाखा प्रायः एकस्मिन् समये समानान्तरेण विकसिता भवति, परन्तु यदा प्रक्षेपणं समानकालस्य नास्ति तदा निर्मितं भवति शाखा विकसितुं।

    • hotfix/xxx शाखा: मास्टरतः प्राप्ता शाखा, सामान्यतया ऑनलाइन बगमरम्मतार्थं प्रयुक्ता, मरम्मतस्य समाप्तेः अनन्तरं, तस्याः मास्टरमध्ये विलीनीकरणं, परीक्षणं, शाखानां विकासः च आवश्यकः ।

    • परीक्षा(परीक्षा) शाखा

    • पूर्व(प्रक्षेपणपूर्वम्) शाखा
      अत्र चित्रविवरणं सम्मिलितं कुर्वन्तु

    # 查看本地分支
    git branch
    
    # 创建本地分支
    git branch 分支名
    
    # 切换分支
    git checkout 分支名
    
    # 切换到一个不存在的分支,创建并切换
    git checkout -b 分支名
    
    # 合并分支,一个分支上的提交可以合并到另一个分支
    git merge 分支名
    
    # 删除分支,不能删除当前分支,只能删除其它分支
    # 删除时需要做各种检查
    git branch -d 分支名
    # 强制删除,不做任何检查
    git branch -D 分支名
    
  • द्वन्द्वनिराकरणम् : यदा शाखाद्वये सञ्चिकासु परिवर्तनं विग्रहं कर्तुं शक्नोति, उदाहरणार्थं, एकस्यामेव सञ्चिकायाः ​​समानपङ्क्तिः एकस्मिन् समये परिवर्तिता भवति, तदा विग्रहस्य निराकरणं हस्तचलितरूपेण करणीयम् अस्ति

    1. सञ्चिकासु विग्रहान् नियन्त्रयन्तु
    2. अस्थायी भण्डारणक्षेत्रे विग्रहनिराकरणसञ्चिकाः योजयन्तु (संयोजयति)
    3. गोदाम (प्रविश्)

दूरस्थ गोदाम

  • git remote add: दूरस्थं गोदामम् योजयन्तु एतत् कार्यं प्रथमं स्थानीयपुस्तकालयस्य आरम्भं कृत्वा ततः निर्मितेन दूरस्थपुस्तकालयेन सह संयोजयितुं भवति ।

    git remote add