第一部分:git基本操作

目錄

1、git初識

1.1、存在的問題

1.2、版本控制器

1.3、git安裝

1.3.1、CentOS平臺

1.3.2、ubuntu平臺

2、git基本操作

2.1、創建倉庫

2.2、配置git

3、工作區、暫存區、版本庫

4、基本操作

4.1、場景一

4.2、場景二

4.3、修改文件

5、版本回退

6、撤銷修改

6.1、情況一

6.2、情況二

6.3、情況三

7、刪除文件


1、git初識

1.1、存在的問題

在?作或學習時,經常會遇到這樣的情況:

我們在編寫各種?檔時,為了防??檔丟失,更改失誤,失誤后能恢復到原來的版本,不得不復制出?個副本。?如:

“報告-v1”

“報告-v2”

“報告-v3”

“報告-確定版”

“報告-最終版”

 .................

每個版本有各?的內容,但最終會只有?份報告需要被我們使?。

但在此之前的?作都需要這些不同版本的報告,于是每次都是復制粘貼副本,產出的?件就越來越 多,?件多不是問題,問題是:隨著版本數量的不斷增多,我們就不記得這些版本各?都是修改了什么 ,?檔如此,我們寫的項?代碼,也是存在這個問題的。

隨著版本的增多,維護好版本是很有挑戰的一件事。

1.2、版本控制器

為了能夠更?便我們管理這些不同版本的?件,便有了版本控制器。所謂的版本控制器,就是能讓我們能了解到?個?件的歷史,以及它的發展過程的系統。通俗的講就是?個可以記錄?程的每?次改動和版本迭代的?個管理系統,同時也?便多?協同作業。

?前最主流的版本控制器就是Git。Git可以控制電腦上所有格式的?件,例如doc、excel、dwg、 dgn、rvt等等。對于我們開發?員來說,Git最重要的就是可以幫助我們管理軟件開發項?中的源代碼?件。

注意:所有的版本控制系統,Git也不例外,其實只能跟蹤?本?件的改動,?如TXT?件,網頁,所有的程序代碼等等。版本控制系統可以告訴你每次的改動,比如在第5?加了?個單詞 “Linux”,在第8?刪了?個單詞“Windows”。 而圖?、視頻這些?進制?件,雖然也能由版本控制系統管理,但沒法跟蹤?件的變化,只能把?進制?件每次改動串起來,也就是只知道圖?從100KB改成了120KB,但到底改了啥,版本控制系統不知道,也沒法知道。

1.3、git安裝

Git 是開放源代碼的代碼托管?具,最早是在Linux下開發的。開始也只能應?于Linux平臺,后?慢慢的被移植到windows下,現在,Git可以在Linux、Unix、Mac和Windows這??平臺上正常運?了。

1.3.1、CentOS平臺

安裝git,以centos7.6為例:

查看是否安裝了Git,以及如果安裝了的話,Git的版本:

git --version

因為我是安裝過的,所以結果為:

所以我先把安裝過的git給卸載掉:

sudo yum remove git -y

卸載完成后,再使用git --version的時候就會出現:

接下來,我們開始下載git:

sudo yum install git -y

下載完成后,可以使用git --version來查看git是否被下載完成。

1.3.2、ubuntu平臺

安裝git,以ubuntu20.04為例:

sudo apt-get install git -y

卸載git:

sudo apt-get remove git -y

2、git基本操作

2.1、創建倉庫

要提前說的是,倉庫是進?版本控制的?個?件?錄。我們要想對?件進?版本控制,就必須先創建?個倉庫出來,這個倉庫就是一個目錄。

創建?個Git本地倉庫對應的命令為:

git init

注意:命令要在?件?錄下執?,也就是說首先要創建一個目錄,然后在該目錄里面使用該命令。

例如:

使用ls -al,我們發現,在當前目錄下多了一個隱藏文件:

當前?錄下多了?個 .git 的隱藏?件,.git?錄是Git來跟蹤管理倉庫的,不要?動修改這個?錄??的?件,不然改亂了,就把Git倉庫給破壞了。

我們可以使用如下命令,查看.git目錄:

tree ./.git

如圖所示:

2.2、配置git

當安裝Git后?先要做的事情是設置你的用戶名稱e-mail地址,這是?常重要的。配置命令為:

git config [--global] user.name "Your Name"   
git config [--global] user.email "email@example.com"

其中--global 是?個可選項。如果使?了該選項,表?這臺機器上所有的Git倉庫都會使?這個配置(一臺機器上是可以創建多個倉庫的)。如果你希望在不同倉庫中使?不同的name 或 e-mail ,可以不要該選項。注意的是,執?命令時必須要在倉庫?。

查看配置命令為:

 git config -l

刪除對應的配置命令為:

git config [--global] --unset user.name
git config [--global] --unset user.email

例如:

3、工作區、暫存區、版本庫

工作區:是在電腦上你要寫代碼或?件的?錄。

暫存區:英?叫stage或index。?般存放.git目錄下的index文件中,我們把暫存區有時也叫作索引(index)。

版本庫:?名倉庫,英?名repository 。?作區有?個隱藏?錄 .git ,它不算?作區,?是Git的版本庫。這個版本庫??的所有?件都可以被Git管理起來,每個?件的修改、刪除,Git 都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”。

下?這個圖展?了?作區、暫存區和版本庫之間的關系:

圖中左側為?作區,右側為版本庫。Git的版本庫?存了很多東西,其中最重要的就是暫存區。

在創建Git版本庫時,Git會為我們?動創建?個唯?的master分?,以及指向master的?個指針叫HEAD。(分?和HEAD的概念后?再說)

當對?作區修改或新增或刪除的?件執? git add 命令時,暫存區?錄樹的?件索引會被更新。

當執?提交操作 git commit 時,master分?會做相應的更新,可以簡單理解為暫存區的?錄樹才會被真正寫到版本庫中。

對象庫:英文名objects。修改或新增或刪除工作區的內容,然后經過git add后會寫入對象庫的一個新的git對象中。對象庫中才是存放的實實在在的內容,暫存區和master都是存放的索引。

由上

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/77143.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/77143.shtml
英文地址,請注明出處:http://en.pswp.cn/web/77143.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

正則表達式與python使用

一、Python正則表達式基礎 1. 導入模塊 Python通過 re 模塊實現正則表達式功能,需先導入模塊: import re2. 核心語法 普通字符:直接匹配字面值(如 a 匹配字符 a)。元字符: \d:匹配數字&…

從FP32到BF16,再到混合精度的全景解析

筆者做過目標檢測模型、超分模型以及擴散生成模型。其中最常使用的是單精度FP32、半精度FP16、BF16。 雙精度"FP64"就不說了,不太會用到。 #1. 單精度、半精度和混合精度 單精度(FP32)、半精度(FP16)和混合…

Hot100方法及易錯點總結2

本文旨在記錄做hot100時遇到的問題及易錯點 五、234.回文鏈表141.環形鏈表 六、142. 環形鏈表II21.合并兩個有序鏈表2.兩數相加19.刪除鏈表的倒數第n個節點 七、24.兩兩交換鏈表中的節點25.K個一組翻轉鏈表(坑點很多,必須多做幾遍)138.隨機鏈表的復制148.排序鏈表 N…

不在同一個局域網的遠程桌面連接怎么設置?本地內網計算機讓其他網絡遠程訪問6種常用方法

遠程桌面是一種重要的技術,它允許用戶通過網絡遠程訪問和控制另一臺計算機的桌面界面。但是,當被控制端和控制端不在同一個局域網內時,就需要進行一些額外的配置。本文將詳細介紹在不同局域網下設置遠程桌面的步驟,以幫助讀者順利…

天機學堂day10作業,完善兌換優惠券功能

UserCouponServiceImpl /*** 兌換碼兌換優惠券* param code*/TransactionalOverridepublic void exchangeCoupon(String code) {//1、校驗code是否為空if (StringUtils.isBlank(code)) {throw new BadRequestException("非法參數!");}//2、解析兌換碼&…

JAVA工程師面試題(七)

1、遞歸實現1,1,2,3,5,8,….第30個數是多少&#xff1f; public static int Foo(int i) { if (i < 0) return 0; else if(i > 0 && i < 2) return 1; else return Foo(i -1) Foo(i - 2); }…

Qt基礎009(HTTP編程和QJSON)

文章目錄 軟件開發網絡架構BS架構/CS架構 HTTP基本概念QT的HTTP編程JSON數據概述QT生成JSON數據QT解析JSON數據 軟件開發網絡架構 BS架構/CS架構 ? 在計算機網絡和軟件開發中&#xff0c;CS架構&#xff08;Client-Server Architecture&#xff0c;客戶端-服務器架構&#x…

高精度電流檢測革命:同軸分流器的創新應用與技術演進

一、精密測量原理與結構創新 基于電磁場分布重構技術的新型同軸分流器&#xff0c;突破了傳統電流測量的物理限制。該器件采用三維環形電阻矩陣結構&#xff0c;通過多層級導電環的精密排列&#xff0c;實現了電流路徑的渦流自補償。區別于常規分流器的平板式設計&#xff0c;其…

【使用層次序列構建二叉樹(數據結構C)】

使用層次序列構建二叉樹&#xff08;C語言實現&#xff09; 在數據結構學習過程中&#xff0c;二叉樹的構建方式通常有遞歸建樹&#xff08;前序/中序&#xff09;和層次建樹&#xff08;廣度優先&#xff09;兩種。本文將介紹一種基于輔助隊列實現的層次建樹方法&#xff0c;并…

設置Rocky Linux盒蓋不休眠的3個簡單步驟

在 Rocky linux&#xff08;和其他基于 RHEL 的發行版&#xff09;中&#xff0c;當你關閉筆記本電腦的蓋子時&#xff0c;默認行為通常是使系統休眠。如果你想更改這一行為&#xff0c;例如&#xff0c;使系統在關閉蓋子時只是鎖定&#xff0c;你可以按照以下步驟操作&#xf…

WPF的發展歷程

文章目錄 WPF的發展歷程引言起源與背景&#xff08;2001-2006&#xff09;從Avalon到WPF設計目標與創新理念 WPF核心技術特點與架構基礎架構與渲染模型關鍵技術特點MVVM架構模式 WPF在現代Windows開發中的地位與前景當前市場定位與其他微軟UI技術的關系未來發展前景 社區貢獻與…

【器件專題1——IGBT第1講】IGBT:電力電子領域的 “萬能開關”,如何撐起新能源時代?

一、IGBT 是什么&#xff1f;重新認識這個 “低調的電力心臟” 你可能沒聽過 IGBT&#xff0c;但一定用過它驅動的設備&#xff1a;家里的變頻空調、路上的電動汽車、屋頂的光伏逆變器&#xff0c;甚至高鐵和電網的核心部件里&#xff0c;都藏著這個 “電力電子開關的瑞士軍刀”…

新聞速遞丨Altair 與 Databricks 達成合作,加速數據驅動型創新

NEWS Altair 近日宣布與數據和人工智能公司 Databricks 達成戰略合作&#xff0c;通過新一代數據統一化、圖譜驅動智能和企業級人工智能&#xff08;AI&#xff09;技術賦能雙方客戶。 此次合作整合了兩大平臺的核心優勢&#xff0c;將 Altair RapidMiner 平臺的強大功能&…

c++11 :智能指針

目錄 一 為什么需要智能指針&#xff1f; 二 智能指針的使用及原理 1. RAII 2. auto_ptr 3. unique_ptr 4. shared_ptr 5. weak_ptr 三 內存泄漏 1.什么是內存泄漏&#xff0c;內存泄漏的危害 2. 如何避免內存泄漏&#xff1f; 一 為什么需要智能指針&#xff1f; …

大模型在直腸癌預測及治療方案制定中的應用研究

目錄 一、引言 1.1 研究背景與意義 1.2 研究目的 1.3 研究方法與創新點 二、大模型技術概述 2.1 大模型的基本原理 2.2 常見大模型類型及特點 2.3 在醫療領域的應用進展 三、直腸癌預測相關數據收集與處理 3.1 數據來源 3.2 數據清洗與預處理 3.3 特征工程 四、大…

VRRP與防火墻雙機熱備實驗

目錄 實驗一&#xff1a;VRRP負載均衡與故障切換 實驗拓撲?編輯一、實驗配置步驟 1. 基礎網絡配置 2. VRRP雙組配置 二、關鍵驗證命令 1. 查看VRRP狀態 2. 路由表驗證 三、流量分析 正常負載均衡場景&#xff1a; 故障切換驗證&#xff1a; 實驗二&#xff1a;防火…

OpenCV中的SIFT特征提取

文章目錄 引言一、SIFT算法概述二、OpenCV中的SIFT實現2.1 基本使用2.1.1 導入庫2.1.2 圖片預處理2.1.3 創建SIFT檢測器2.1.4 檢測關鍵點并計算描述符2.1.5 檢測關鍵點并計算描述符并對關鍵點可視化2.1.6 印關鍵點和描述符的形狀信息 2.2 參數調優 三、SIFT的優缺點分析3.1 優點…

【信息系統項目管理師】高分論文:論成本管理與采購管理(信用管理系統)

更多內容請見: 備考信息系統項目管理師-專欄介紹和目錄 文章目錄 論文1、規劃成本管理2、成本估算3、成本預算4、成本控制論文 2019年1月,我作為項目經理參與了 XX基金管理有限公司信用管理系統項目。該項目成 本1000萬,建設期為1年。通過該項目,XX基金管理有限公司在信用…

從邊緣到云端,如何通過時序數據庫 TDengine 實現數據的全局洞

在當今數字化轉型加速的背景下&#xff0c;海量的數據生成和實時處理需求已成為企業面臨的關鍵挑戰。無論是物聯網設備、工業自動化系統&#xff0c;還是智能城市的各類傳感器&#xff0c;數據的采集、傳輸與分析效率&#xff0c;直接影響企業的決策與運營。為此&#xff0c;TD…

Axure全局變量的含義與基礎應用

親愛的小伙伴,在您瀏覽之前,煩請關注一下,在此深表感謝! Axure產品經理精品視頻課已登錄CSDN可點擊學習https://edu.csdn.net/course/detail/40420 課程主題:全局變量 主要內容:全局變量含義、基礎應用 應用場景:元件賦值 案例展示: 案例視頻: