GIT基本的命令

文章目錄

        • 04.GIT本地操作-初始化工作區
          • 內容
          • 小結
        • 05.GIT本地操作-add與commit
          • 目標
          • 內容
          • 小結
        • 06.GIT本地操作-差異比較
          • 目標
          • 內容
          • 小結
        • 07.GIT本地操作-版本回退
          • 目標
          • 內容
          • 小結
        • 08.GIT本地操作-修改撤消
          • 目標
          • 內容
          • 小結
        • 09.GIT本地操作-總結


在這里插入圖片描述

04.GIT本地操作-初始化工作區
內容
  • 初始化工作區

    在這里插入圖片描述

    • 工作區 就是你在電腦里能看到的目錄。比如我們剛剛創建的learn-Git目錄,在最初使用的時候,我們需要初始化當前的文件夾為工作區

    • 如何初始化工作區

      命令:git init 初始化
      

      在要被初始化工作區的目錄右鍵,選擇 Git Bash Here

輸入 git init
在這里插入圖片描述

在文件夾中機會出現一個隱藏文件 .git 如圖

在這里插入圖片描述

當我們在文件夾中添加文件的時候,那么這個文件就會被 Git 所管理

  • 查看狀態

我們在 該目錄中創建一個 readme.txt 文件,并使用 vim 命令進入編輯模式添加內容:第一行代碼。可以通過命令來查看它的狀態

命令:git status 查看狀態

在這里插入圖片描述

紅色代表當前沒有提交到緩存區

小結
  • 如何初始化工作區

    git init 初始化成功的標志是有一個.git的隱藏目錄

  • 如何查看文件狀態

    git status

  • 進入文件編輯模式 linux系統

? vim 文件名然后 按 字母 i(前) a(后) o(下一行)插入數據然后按esc退出====最后按 :wq保存退出。

  • 查看文件內容:cat 文件名 linux系統

05.GIT本地操作-add與commit
目標

? 可以使用 git add 將文件添加到暫存區,使用git commit 提交到本地倉庫

內容

在這里插入圖片描述

  • 工作區提交緩存區

    在git控制臺中使用 命令

    命令:git add readme.txt 
    

    在這里插入圖片描述

    這是完成了將文件由工作區提交暫存區

    我們通過 git status 來查看狀態

    在這里插入圖片描述

    發現這時文件變成綠色,可以提交到本地倉庫

  • 緩存區提交本地倉庫

    命令:git commit -m '第一次提交' 
    說明:-m 后面跟隨的是為你提交的備注,m是單詞message信息的首字母提交信息格式:增刪改查第幾次提交
    

    在這里插入圖片描述

    注意:如果第一次提交需要填寫如下內容:

    命令:git config --global user.email '123456@qq.com'
    說明:指定郵箱
    命令:git config --global user.name 'xiaowang'
    說明:指定操作者
    
小結
  • 說一下 git add 的作用

    將工作區的文件添加到暫存區

  • 說一下 git commit 的作用

    將文件從暫存區提交到本地倉庫 git commit -m '信息'

  • 擴展:

    添加多個文件  git add [file1] [file2] ...
    添加指定目錄到暫存區,包括子目錄  git add [dir]
    添加當前目錄下的所有文件到暫存區,不包括被刪除的文件  git add .     重要
    add 時,一個個文件加比較麻煩,可以用下面的命令將所有變動的文件同步至暫存區(新增、修改、刪除)
    git add -A
    下面的命令是將所有修改和刪除的文件同步至暫存區,不包括新增文件
    git add -u
    

06.GIT本地操作-差異比較
目標

? 使用 git diff 來比較暫存區、本地庫與工作區的內容

內容

使用 vim 命令,對 readme.txt 文件進行編輯,添加我是第二行代碼,使用:wq退出

在這里插入圖片描述

在這里插入圖片描述

  • 工作區暫存區比較

    命令:git diff readme.txt
    

    在這里插入圖片描述

  • 工作區本地庫比較

    命令:git diff HEAD readme.txt
    

    在這里插入圖片描述

  • 暫存區本地庫比較

    命令:git diff --cached readme.txt
    

    在這里插入圖片描述

    這里緩存區和本地庫沒有不同所以沒有內容

  • 補充:可以第二次提交到暫存區和本地倉庫

小結
  • 工作區與暫存區如何比較

    git diff 文件名

  • 工作區與本地庫如何比較

    git diff HEAD 文件名

  • 暫存區與本地庫如何比較

    git diff --cached 文件名


07.GIT本地操作-版本回退
目標

? 掌握 git log、git reflog、git reset 作用

內容

當我們從暫存區提交到本地倉庫時,發現當前的提交的版本有問題,希望回退到指定版本如何操作呢?

在這里插入圖片描述

使用vim命令編輯readme.txt,添加“我是第三行代碼”

在這里插入圖片描述

命令:git add readme.txt 提交到暫存區

在這里插入圖片描述

命令:git commit -m '第三次提交' 提交到本地倉庫

我們可以通過git提供的查看日志命令來查看提交的日志

命令:git log  查看當前提交日志

圖略.

可以發現,目前為止,我們已經在本地倉庫中提交了3次,也就是說有3個不同版本。其中,最近的這個版本有一個標示:HEAD-> master 這就是標記當前分支的當前版本所在位置,如果沒有顯示當前所在位置可以使用下面命令查看:

命令:git log --decorate  查看當前提交日志,且顯示當前分支的當前版本所在位置

在log中,每一個版本的前面,都有一長串隨即數字: ab44a10787c2db2bccd7ceb9c39dcf06d309065518d4b ,這是每次提交的 commit id ,這是通過SHA1算法得到的值,Git通過這個唯一的id來區分每次提交

  • 回退到之前版本

    命令:git reset --hard HEAD^回歸到上一個版本,Git通過HEAD來判斷當前所在的版本位置。那么上一個版本,就用HEAD^標示,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100。 
    

    這時我們可以在查看一下日志 git log

    圖略

    發現只有兩個版本,我們在查看一下文件內容

    圖略

  • 回退到指定版本

    圖略

    首先使用

    命令: git reflog 查看所有操作
    

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    找到之后可以使用如下命令進行回退到指定版本

    命令:git reset --hard 版本號 回退到指定版本
    

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    我們回到第三次提交,這時我們在查看文件

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

小結
  • 如何查看當前日志

    git log 只能看到當前操作

  • 如何查看所有操作日志

    git reflog 查看所有操作日志

  • 如何回退到上一個版本

    git reset --hard head^

  • 如何回退到指定版本

    git reset --hard 版本號

08.GIT本地操作-修改撤消
目標

? 掌握 git checkout、git reset head作用

內容

在這里插入圖片描述

當我們工作區內容想要提交到緩存區時【add】,突然發現有問題,想要撤銷該如何處理?

當我們已提交到緩存區的內容,發現出現了bug,這時又應該如何處理哪?

以上操作我們可以使用GIT提供的撤銷命令來完成

  • 工作區撤銷修改

    編輯readme.txt添加“我是第四行”

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    在你提交緩存區前,你突然發現這個修改是有問題的,你打算恢復到原來的樣子。怎么辦?

    使用 git status 命令查看當前狀態

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    命令:git checkout  文件名稱 撤銷工作區修改
    

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    我們撤銷后,在查看文件中內容,發現工作區內容已經撤銷,并查看狀態,發現狀態很干凈

  • 暫存區撤銷修改

    使用 vim 命令 編輯readme.txt添加“我是第五行”

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    使用git add提交文件至暫存區

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    撤銷到工作區

    命令:git reset HEAD readme.txt 撤銷到工作區
    

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    工作區撤銷 git checkout readme.txt

    外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

    我們在查看文件,發現已經恢復到最初始樣子

小結
  • 如何實現工作區撤銷修改

    git checkout 文件名

  • 如何撤銷緩存區內容

    git reset HEAD 文件名

09.GIT本地操作-總結

外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

  • 初始化工作區 git init
  • 查看狀態 git status
  • 提交
    • 工作區提交暫存區 git add 文件
    • 暫存區提交本地庫 git commit -m ‘提交信息’
  • 差異比較
    • 工作區緩存區比較 git diff 文件名
    • 工作區本地庫比較 git diff HEAD 文件名
    • 緩存區與本地庫比較 git diff --cached 文件名
  • 版本回退
    • 查看日志 git log
    • 回退到上一個版本 git reset --hard head^
    • 查看所有操作日志 git reflog
    • 回退到指定版本 git reset --hard 版本號
  • 修改撤消
    • 工作區撤消 git checkout 文件名
    • 撤消緩存區(從緩存區撤銷到工作區) git reset head 文件名


在這里插入圖片描述



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

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

相關文章

Java對象大小計算

概述 在實際應用中,尤其是在進行JVM調優時,理解并正確估計對象大小是非常重要的,因為這直接影響到內存分配、垃圾回收效率以及應用程序的整體性能。 對象的組成 在Java中,計算一個對象的大小是為了了解它在內存中占用的確切空間…

【c++基礎】挑戰賽第二題——放大的X

說明 請你編程畫一個放大的’X’&#xff08;大寫字母&#xff09;。 如3*3的’X’應如下所示&#xff1a; x xxx x 5*5的’X’如下所示&#xff1a; X XX XXX X X X 輸入數據 有一個正奇數n&#xff08;3 < n < 79&#xff09;&#xff0c;表示放大的規格。 …

m位數問題(c++題解)

題目描述 考官只給兩個整數n和m&#xff08;1 < n < 8&#xff0c;1< m <5&#xff09;&#xff0c;要求選手從1,2,…,n中取出m個數字&#xff0c;組成一個m位整數&#xff0c;統計所有的m位整數中一共有多少個素數。 如n3,m2時&#xff0c;符合條件的整數有&…

(C語言) time庫-日期和時間工具

文章目錄 ?介紹?常量??CLOCKS_PER_SEC ?類型??tm??time_t??clock_t??timespec (C11) ?函數-時間操作??time&#x1f3f7;?返回紀元開始經過的當前系統日歷時間??clock&#x1f3f7;?返回未加工的程序啟動時開始經過的處理器時間??difftime&#x1f3f7;?…

(delphi11最新學習資料) Object Pascal 學習筆記---第6章第3節(字符串連接)

6.3.3 字符串連接 ? 我已經提到過&#xff0c;與其他語言不同&#xff0c;Object Pascal 完全支持直接字符串連接&#xff0c;這實際上是一個相當快的操作。在本章中&#xff0c;我將向您展示一些字符串連接代碼和一些速度測試。稍后&#xff0c;在第 18 章中&#xff0c;我將…

第十五天-爬蟲項目實戰

目錄 1.介紹 2.代碼 1.main.py 2.PageSider.py 3.DetailSpider.py 4.DataParse.py 5.Constant.py 6.HanderRequest.py 1.介紹 1. 使用多線程爬取網站 2.爬取數據后保存至excel 3.爬取網站(僅做測試)網創類項目爬取&#xff1a;https://www.maomp.com/ 4..實現效果 …

python66-Python的循環之常用工具函數

使用zip()函數可以把兩個列表“壓縮”成一個zip對象(可迭代對象),這樣就可以使用一個循環并行遍歷兩個列表。為了測試 zip()函數的功能,我們可以先在交互式解釋器中“試驗”一下該函數的功能。 # !/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2024/01# @Author : …

元數據優化:提升您的網站在搜索引擎中的表現

前言 在之前的文章中&#xff0c;我們探討了如何通過超鏈接來提高用戶在網站的使用體驗。本篇將聚焦于元數據的優化&#xff0c;揭示它如何成為提升網站曝光率和點擊率的秘密武器。 一、介紹 元數據&#xff0c;或稱之為數據的數據&#xff0c;在網頁開發中占據著不可忽視的角…

IPD MM流程之業務策略工具:安索夫矩陣

IPD市場管理流程&#xff0c;華為內部稱為“MM流程”&#xff08;Market Management&#xff0c;MM&#xff09;。華為市場管理是通過對市場和細分市場的分析&#xff0c;制定細分市場的策略&#xff0c;形成商業計劃&#xff0c;把商業計劃落實在日常工作當中。MM流程其中一個…

git根據文件改動將文件自動添加到緩沖區

你需要修改以下腳本中的 use_cca: false 部分 #!/bin/bash# 獲取所有已修改但未暫存的文件 files$(git diff --name-only)for file in $files; do# 檢查文件中是否存在"use_cca: false"if grep -q "use_cca: false" "$file"; thenecho "Ad…

3.1線程作業

1.要求定義一個全局變量char buf"1234567"&#xff0c;創建兩個線程&#xff0c;不考慮退出條件。 a.A線程循環打印buf字符串&#xff0c; b.B線程循環倒置buf字符串&#xff0c;即buf中本來存儲1234567&#xff0c;倒置后buf中存儲7654321.B線程中不打印!! c.倒置…

qt5-入門-使用拖動方式創建Dialog

參考&#xff1a; C GUI Programming with Qt 4, Second Edition 本地環境&#xff1a; win10專業版&#xff0c;64位&#xff0c;Qt5.12 目錄 實現效果基本流程逐步實操1&#xff09;創建和初始化子部件2&#xff09;把子部件放進布局中3&#xff09;設置tab順序4&#xff09…

jstat命令查看jvm的GC信息

文章目錄 前言jstat命令查看jvm的GC信息1. 概述2. 應用堆內存水位閥值大小怎么確定3. 使用 jps 命令查看 Java 進程的進程號&#xff08;PID&#xff09;![在這里插入圖片描述](https://img-blog.csdnimg.cn/direct/5097401443314e9d808a83b694dbc6e5.png)4. jstat用法5. 類加載…

UE4 Niagara 關卡3.1官方案例解析二

自己嘗試做做&#xff0c;打亂順序 1、新建空的niagara system&#xff0c;添加空的發射器。更換渲染器為網格體渲染器并添加網格體。 2、發射器更新里面添加Spawn Rate&#xff0c;發射個粒子看看 效果圖&#xff1a; 3、采樣靜態網格體&#xff0c;網格體粒子出生于靜態網格…

【排序算法】基數排序

一&#xff1a;基本概念 1.1 基數排序(桶排序)介紹 基數排序&#xff08;radix sort&#xff09;屬于“分配式排序”&#xff08;distribution sort&#xff09;&#xff0c;又稱“桶子法”&#xff08;bucket sort&#xff09;或bin sort&#xff0c;顧名思義&#xff0c;它是…

【圖說】電腦發展史

免責聲明:文中有一些圖片來源自網絡,如有版權請通知我刪除,謝謝! “結繩記事”是計算的開端 如果說“結繩記事”僅是計數,那么“算籌”就是真正的計算工具 算盤也是我們老祖宗的杰出發明,最擅長“加減乘除”,包括但不限于乘方、開方、對數等。還能進行開發智力的“珠心算…

鼠標失靈怎么辦?電腦出現鼠標失靈的詳細處理方法介紹

無論是筆記本電腦還是臺式機電腦&#xff0c;鼠標是必不可少的外設之一&#xff0c;而我們在使用電腦的過程中&#xff0c;經常回遇到鼠標突然失靈了&#xff0c;不聽使喚&#xff0c;控制不了&#xff0c;接下小編來與大家一起分享&#xff0c;遇到這種情況我們該怎么辦 有時…

C語言學習筆記(二)

C語言學習 學習筆記(一) 學習筆記(二&#xff09; 文章目錄 C語言學習一、C語言中的數據類型進制二進制八進制十六進制進制轉換表 單位換算尋址 數據類型基本類型整數類型整數的有符號和無符號實數類型字符型 構造類型指針類型空類型總結 常量直接常量符號常量轉義符 符號常量…

Python并發編程:多線程-GIL全局解釋器鎖

一 引子 在Cpython解釋器中&#xff0c;同一個進程下開啟的多線程&#xff0c;同一時刻只能有一個線程執行&#xff0c;無法利用多核優勢首先&#xff1a;需要明確的一點是GIL并不是Python的特性&#xff0c;它是在實現Python解析器(CPython)時所引入的一個概念。就好比c是一套…

協議(網絡協議)

HTTP/HTTPS 協議 HTTP 實際上是個縮寫&#xff0c;英文全稱是&#xff1a;Hyper Text Transfer Protocol &#xff08;超文本傳輸協議&#xff09;。 最常用的網頁&#xff08;也叫web頁&#xff09;就是一種超文本的具體表現形式。HTTPS &#xff08;全稱&#xff1a;Hyper …