国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

EasyHPC - Git入門教程【筆記】

這篇具有很好參考價值的文章主要介紹了EasyHPC - Git入門教程【筆記】。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

內(nèi)容來源:超算習堂 (easyhpc.net)

01 基礎(chǔ)知識

git是一個分布式版本控制軟件,最初由林納斯·托瓦茲(Linus Torvalds,Linux內(nèi)核的發(fā)明人及該計劃的合作者)創(chuàng)作,于2005年以GPL發(fā)布。最初目的是為更好地管理Linux內(nèi)核開發(fā)而設(shè)計。

git最初的開發(fā)動力來自于BitKeeper和Monotone。git最初只是作為一個可以被其他前端包裝的后端而開發(fā)的,但后來git內(nèi)核已經(jīng)成熟到可以獨立地用作版本控制。很多著名的軟件都使用git進行版本控制,其中包括Linux內(nèi)核、X.Org服務(wù)器和OLPC內(nèi)核等項目的開發(fā)流程。

Github就是一個用git做版本控制的項目托管平臺。

主要功能

git是用于Linux內(nèi)核開發(fā)的版本控制工具。與CVS、Subversion一類的集中式版本控制工具不同,它采用了分布式版本庫的作法,不需要服務(wù)器端軟件,就可以運作版本控制,使得源代碼的發(fā)布和交流極其方便。git的速度很快,這對于諸如Linux內(nèi)核這樣的大項目來說自然很重要。git最為出色的是它的合并追蹤(merge tracing)能力。

實現(xiàn)原理

git更像一個文件系統(tǒng),直接在本機上獲取數(shù)據(jù),不必連接到主機端獲取數(shù)據(jù)。每個開發(fā)者都可有全部開發(fā)歷史的本地副本,changes從這種本地repository復(fù)制給其他開發(fā)者。這些changes作為新增的開發(fā)分支被導(dǎo)入,可以與本地開發(fā)分支合并。

分支是非常輕量級的,一個分支僅是對一個commit的引用。

git是用C語言開發(fā)的,以追求最高的性能。git自動完成垃圾回收,也可以用命令git gc --prune直接調(diào)用。

git存儲每個新創(chuàng)建的object作為一個單獨文件。為了壓縮存儲空間占用, packs操作把很多文件使用差分壓縮入一個文件中(packfile),并創(chuàng)建一個對應(yīng)的索引文件,指明object在packfile中的偏移值。新創(chuàng)建的對象仍然作為單獨文件存在。repacks操作非常費時間,git會在空閑時間自動做此操作。也可用命令git gc來直接啟動repack。packfile與索引文件都用SHA-1作為校驗和并作為文件名。git fsck命令做校驗和的完整性驗證。

git中的數(shù)據(jù)流與存儲級別

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git安裝和配置

在Ubuntu系統(tǒng)中可以直接使用sudo apt install git直接安裝,本次虛擬環(huán)境已安裝git

首先配置用戶信息:用戶名和郵箱地址

git config --global user.name "ehpc"
git config --global user.email ehpc@ehpc.com

其中--global選項表示所有項目默認使用的用戶信息,去掉后則會在特定項目中使用特定用戶信息

可以使用git config --list查看已有配置信息

EasyHPC - Git入門教程【筆記】,Git,git,筆記

02 新建倉庫

git有工作區(qū)、暫存區(qū)和版本庫:

  • 工作區(qū)(Working directory):自己的工作目錄
  • 暫存區(qū)(stage / index):暫時存放工作區(qū)中修改的內(nèi)容
  • 版本庫(repository):工作區(qū)的隱藏目錄.git,可以用ls -a查看

新建倉庫

git可以使用git init命令來初始化創(chuàng)建一個git倉庫。此時,會生成一個.git目錄

EasyHPC - Git入門教程【筆記】,Git,git,筆記

當然,也可以指定目錄,使用命令:git init <directory>

EasyHPC - Git入門教程【筆記】,Git,git,筆記

克隆倉庫

我們可以使用命令git clone <repo>從git倉庫中克隆項目。

也可以指定目錄,使用命令 git clone <repo> <directory>

EasyHPC - Git入門教程【筆記】,Git,git,筆記

03 工作流程

一般git的工作流程如下:

  • 克隆或創(chuàng)建git資源作為工作目錄
  • 在工作目錄里修改文件或添加文件
  • 更新自己的工作目錄
  • 查看修改的內(nèi)容
  • 提交修改
  • 有問題時撤回修改內(nèi)容

創(chuàng)建倉庫

使用如下命令創(chuàng)建一個測試用倉庫

git init ehpc
cd ehpc

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git add

使用git add將添加的文件或修改的文件加入本地的緩存區(qū)

我們首先創(chuàng)建兩個文件,然后將其添加到緩存區(qū)

touch README ehpc.txt
echo "test" >> README
git add README ehpc.txt

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git status

git status操作可以查看git當前狀態(tài),我們輸入后可得到:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

如果我們修改文件,如下命令:

echo "test2" >> README
git status

將會看到:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

我們還可以再創(chuàng)建一個新的文件:

touch ehpc2.txt

將會看到:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

也可以使用-s參數(shù)查看簡易信息

git status -s

EasyHPC - Git入門教程【筆記】,Git,git,筆記

"AM"表示添加到緩存后又有改動。

git diff

git diff可以查看git status的結(jié)果的詳細信息,可以添加參數(shù)--cached表示已緩存的改動,--stat顯示摘要

git diff

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git diff --stat

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git add README
git diff --cached

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git commit

git commit將緩存區(qū)內(nèi)容添加到倉庫中

git commit -m 'first commit'
git satus

EasyHPC - Git入門教程【筆記】,Git,git,筆記

其中-m參數(shù)表示后面為提交注釋

也可通過添加-a參數(shù)跳過add過程:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git rm

要從git倉庫中刪除文件,則必須使用git rm命令:

git rm ehpc.txt
ls

EasyHPC - Git入門教程【筆記】,Git,git,筆記

可以通過添加-f參數(shù)執(zhí)行強制刪除,--cached參數(shù)不刪除工作區(qū)文件

git rm --cached README

EasyHPC - Git入門教程【筆記】,Git,git,筆記

遞歸刪除當前目錄時,使用:

git rm -r  *

git mv

作用與git rm類似:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

04 分支管理

每個git倉庫都可以擁有很多個分支,這樣可以在分支之后,不影響主線的同時繼續(xù)自己的工作,同時,在開發(fā)完成后,還可以合并分支。

創(chuàng)建分支

通過git branch <name>創(chuàng)建分支,git branch查看分支列表,執(zhí)行:

git branch ehpcbranch
git branch

EasyHPC - Git入門教程【筆記】,Git,git,筆記

Git 新建分支出現(xiàn)報錯:“fatal: Not a valid object name: ‘master‘.“_is not a valid branch name_Lakers2015的博客-CSDN博客

切換分支

通過git checkout <name>切換分支,我們切換分支并修改文件:

git checkout ehpcbranch
echo "branch"  >> README.md
git status
git add README.md
git commit -m "branch commit"

EasyHPC - Git入門教程【筆記】,Git,git,筆記

最后再切回master分支:

git checkout master

EasyHPC - Git入門教程【筆記】,Git,git,筆記

合并分支

使用git merge -m "" <name>合并分支:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

合并沖突

當分支與master都有更改時合并,則會出現(xiàn)沖突,我們現(xiàn)在制造沖突并嘗試合并:

git checkout ehpcbranch
echo "branch2"  >> README.md
git commit -am "conflict"
git checkout master
echo "branch3"  >> README.md
git commit -am "conflict2"
git merge ehpcbranch

將會看到如下結(jié)果:

EasyHPC - Git入門教程【筆記】,Git,git,筆記

此時需要手動修正沖突:

git diff
vim README.md
cat README.md
git diff
git add README.md
git commit -m "merge cobflict"

EasyHPC - Git入門教程【筆記】,Git,git,筆記

刪除分支

刪除分支操作很簡單,只需使用git branch -d <name>即可:

git branch
git branch -d ehpcbranch
git branch

EasyHPC - Git入門教程【筆記】,Git,git,筆記

05 日志操作

使用git后,會進行很多操作,當我們想回顧操作歷史時,就可以查看git的日志來了解歷史操作。

查看日志

git中可以使用git log命令查看所有的commit:

git log

EasyHPC - Git入門教程【筆記】,Git,git,筆記

q退出,也可以添加--oneline參數(shù)簡單查看:

git log --oneline

EasyHPC - Git入門教程【筆記】,Git,git,筆記

添加--graph參數(shù)查看分支信息:

git log --oneline --graph

EasyHPC - Git入門教程【筆記】,Git,git,筆記

還有--author參數(shù)查看指定用戶的記錄,使用--since--before,--until--after指定日期查看,--reverse逆向查看。

日志統(tǒng)計

添加--stat參數(shù)以詳細顯示每次commit中修改的文件的內(nèi)容:

git log --stat

EasyHPC - Git入門教程【筆記】,Git,git,筆記

日志排序

除了--reverse可以重新排序,--topo-order同樣可以:

git log --topo-order --graph

EasyHPC - Git入門教程【筆記】,Git,git,筆記

格式化日志

可以指定--pretty參數(shù)改變顯示格式:

git log --pretty=short

EasyHPC - Git入門教程【筆記】,Git,git,筆記

git log --pretty=oneline  --graph

EasyHPC - Git入門教程【筆記】,Git,git,筆記文章來源地址http://www.zghlxwxcb.cn/news/detail-789315.html

到了這里,關(guān)于EasyHPC - Git入門教程【筆記】的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【Git 入門教程】第九節(jié)、Git的最佳實踐

    【Git 入門教程】第九節(jié)、Git的最佳實踐

    Git是一個強大的版本控制系統(tǒng),可以幫助開發(fā)者管理和協(xié)調(diào)代碼庫。然而,正確使用Git并不總是容易。本文將介紹一些Git的最佳實踐,以幫助開發(fā)者更好地利用Git來管理和協(xié)調(diào)代碼庫。 ? 在使用Git時,編寫有意義的提交信息是非常重要的。提交信息應(yīng)該簡明扼要地描述所做的

    2024年02月06日
    瀏覽(16)
  • 【Git 入門教程】第三節(jié)、Git的分支和合并

    【Git 入門教程】第三節(jié)、Git的分支和合并

    Git的分支和合并是Git中最重要的概念之一。使用Git可以輕松地創(chuàng)建、切換和合并分支,這為團隊協(xié)作開發(fā)提供了極大的便利。在本文中,我們將介紹Git分支的基本概念和操作方式。 在Git中,分支是指一個代碼庫的不同版本。分支允許開發(fā)者獨立地開發(fā)特定功能或修復(fù)故障,而

    2024年02月07日
    瀏覽(14)
  • 【Git 入門教程】第七節(jié)、Git 遠程倉庫(Github)

    【Git 入門教程】第七節(jié)、Git 遠程倉庫(Github)

    GitHub 是一個基于Git的代碼托管平臺,它是全球最大的開源軟件社區(qū)之一。GitHub允許開發(fā)者在上面創(chuàng)建和托管他們的Git倉庫,并與其他開發(fā)者進行協(xié)作。 ? GitHub是一個非常流行的Git工具,它是開源社區(qū)的重要組成部分,并支持許多著名的開源項目。以下是一些GitHub的主要功能

    2024年02月01日
    瀏覽(20)
  • Git 新手快速入門教程

    Git 新手快速入門教程

    1. 何為版本控制 版本控制是一種記錄文件變化的系統(tǒng),可以跟蹤文件的修改歷史,并允許用戶在不同版本之間進行比較、恢復(fù)或合并。它主要用于軟件開發(fā)過程中管理代碼的變更,但也可以應(yīng)用于任何需要跟蹤文件變更的場景。 版本控制系統(tǒng)(VCS)可以幫助團隊協(xié)作開發(fā),

    2024年04月26日
    瀏覽(25)
  • GIT安裝教程(入門)

    GIT安裝教程(入門)

    目錄 前言 Git作者 官網(wǎng) GIT優(yōu)點 GIT缺點 為什么要使用 Git 下載以及安裝步驟 一、官網(wǎng)下載 二、GIT安裝步驟 1、安裝get程序 2、許可聲明 3、選擇安裝路徑 4、選擇git組件 5、創(chuàng)建菜單名稱 6、 git文件默認編輯器 7、設(shè)置新存儲庫中初始分支的名稱 8、調(diào)整Path環(huán)境 9、選擇SSH可執(zhí)行

    2024年02月15日
    瀏覽(25)
  • Git入門詳細教程

    Git入門詳細教程

    Git官網(wǎng) Git是一個開源的 分布式版本控制系統(tǒng) ,用于跟蹤文件的變化和協(xié)作開發(fā)。它允許多個開發(fā)者在同一項目中共同工作,并能夠有效地管理代碼的版本和歷史記錄。Git可以幫助開發(fā)團隊更好地協(xié)作,追蹤代碼變更,并且可以在需要時輕松地回滾到之前的版本。 版本控制是

    2024年01月19日
    瀏覽(62)
  • git菜鳥入門級教程

    Git是一個分布式版本控制系統(tǒng),它可以幫助開發(fā)者 管理和追蹤 代碼的變化。下面是一個保姆級的Git教程,包括 概述、理論、指令、創(chuàng)建及代碼初始化 完整步驟、 分支與沖突 以及遇到的問題。 概述 Git是一個開源的分布式版本控制系統(tǒng),最初由Linus Torvalds開發(fā)。它可以追蹤代

    2024年02月16日
    瀏覽(26)
  • 一小時Git入門教程【上篇】

    一小時Git入門教程【上篇】

    使用方式 命令行、圖形化界面、IDE插件 首先配置用戶名 再來配置郵箱 注意:以上命令只需要執(zhí)行一次,如果之前已經(jīng)執(zhí)行過了,那么這一步可以省略。 保存用戶名和密碼到本地 git config --global credential.helper store 是一個 Git 命令,用于配置 Git 在處理遠程倉庫時如何存儲憑據(jù)

    2024年04月08日
    瀏覽(22)
  • 《Git入門實踐教程》前言+目錄

    版本控制系統(tǒng)(VCS)在項目開發(fā)中異常重要,但和在校大學生的交流中知道,這個重要方向并未受到重視。具備這一技能,既是項目開發(fā)能力的體現(xiàn),也可為各種面試加碼。在學習體驗后知道,Git多樣化平臺、多種操作方式、豐富的資源為業(yè)內(nèi)人士提供了方便的同時,也造成

    2024年02月10日
    瀏覽(95)
  • 【Git 入門教程】第四節(jié)、Git沖突:如何解決版本控制的矛盾

    【Git 入門教程】第四節(jié)、Git沖突:如何解決版本控制的矛盾

    Git是目前最流行的版本控制系統(tǒng)之一,它為團隊協(xié)作開發(fā)提供了方便和高效的方式。然而,在多人同時修改同一個文件時,可能會出現(xiàn)代碼 沖突(conflict) ,導(dǎo)致代碼無法正確合并。那么,如何解決Git沖突呢? 在多分支并行處理時,每一個分支可能是基于不同版本的主干分

    2024年02月05日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包