git常用操作命令

本文介紹git常用的操作命令,供大家參考。

1、開始

# 初始化本地git
git init# 在初始化的目錄中,創建readme.txt,添加到git庫中
git add readme.txt
git commit -m "寫了一個readme.txt文件"

2、版本回退

2.1、git reset

git log 
git log --pretty=oneline# 回退
git reset --hard HEAD^
  • –hard:回退到上個版本的已提交狀態。
  • –soft:回退到上個版本的未提交狀態。
  • –mixed:回退到上個版本已添加但未提交的狀態。
# 回到指定版本,往前往后都可以
git reset --hard f060 # 查看提交的id,當用git log命令找不到你想要的id時使用。一般是先回退,后來又反悔了。
git reflog

2.2、git restore

相對于git reset命令,git restore更好用一些,這是新命令,需要在2.23版本以上使用。

## 恢復a.txt到最近的提交
git restore a.txt## 將b.txt從暫存區移除
git restore  --staged b.txt## 從指定提交回復文件
git restore --source=HEAD~1 c.txt

3、幾個概念

  • 工作區:就是你電腦的某個初始化了git的文件夾。
  • 版本庫:工作區有個.git文件夾,隱藏的,這就是git的版本庫。
    • stage:暫存區,執行 git add 命令時,就是把文件添加到暫存區。
    • master:主分支,執行 git commit 命令時,實際是把暫存區的內容提交到master。

4、撤銷修改

當你修改了文件,又想恢復到修改前的狀態時,用下面的命令。用于恢復工作區和暫存區中的文件,也可以用于丟棄未提交的更改。

# 老命令,雙橫線不能少,否則就成了操作分支了
git checkout -- readme.txt# 新命令,用這個命令即可。
git restore readme.txt

5、遠程倉庫

5.1、生成ssh key

ssh-kengen -t rsa -C "你的郵箱"

找到.ssh目錄,windows系統在:C:\Users\Administrator.ssh。如果你不是用Administator登錄的,那就把Administrator換成你的用戶名。
執行上面命令后,在.ssh目錄下會生成兩個文件,id_rsa和id_rsa.pub。其中id_rsa.pub 是公鑰,如果你使用SSH key連接遠程倉庫時,把它的內容復制就行了,具體操作大家查一下。

5.2、使用gitee創建倉庫

注冊并登錄gitee,右上角加號,創建倉庫:
在這里插入圖片描述

這是添加倉庫截圖,都很簡單,大家自行操作。

在這里插入圖片描述

5.3、關聯本地倉庫與遠程倉庫

在本地倉庫目錄下,執行:

git remote add origin git@gitee.com:maodou95838_admin/a-test.git

注意:后面的maodou95838_admin/a-test.git寫成你自己的,否則是不能推送的。

5.4、推送

# 首次推送
# -u 關聯本地master和遠程master
git push -u origin master # 從第二次后就不用再加 -u 
git push origin master

5.5、取消關聯

# 查看遠程庫的信息
git remote -v# 按照名字取消關聯
git remote rm origin

5.6、從遠程庫clone

git clone git@gitee.com:maodou95838_admin/a-test.git

6、分支管理

到現在為止,我們都是在master分支上操作。

6.1、checkout命令

# 創建并切換到dev
git checkout -b dev# 切換到master
git checkout master# 合并dev到master分支,注意:當前分支是master
git merge dev# 刪除dev分支
git branch -d dev

6.2、switch命令

# 創建并切換到dev分支
git switch -c dev# 切換到master
git switch master

6.3、stash

當你在分支上工作,工作沒做完又不能提交,現在要去別的分支上工作,此時stash就用上了。

# stash 用于暫存工作區
git stash# 查看工作區
git stash list# 恢復工作區并刪除stash的內容
git stash pop

6.4、rebase

git rebase
  • rebase操作可以把本地未push的分叉提交歷史整理成直線。
  • rebase的目的是使我們在查看歷史提交的變化時更容易。

7、標簽管理

# 當前提交打成v1.0
git tag v1.0# 查看
git tag# 給f12345提交打v0.2
git tag v0.2 f12345

創建的標簽只存儲在本地,不會自動推送到遠程。要推送某個標簽,使用:

git push origin v1.0

8、忽略本地文件

在工作區根目錄添加.gitignore文件,添加配置即可,github上也有現成的,拿下來修改就行了。
一個簡單的例子:

# Mobile Tools for Java (J2ME)
.mtj.tmp/# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

8.1、檢查.gitignore

git check-ignore -v .idea/

8.2、強制添加文件

git add -f Abc.class

8.3、排查個別文件

# 排查所有.開頭的文件
.*# 不排除.gitignore
!.gitignore

9、配置別名

# 用st代替status
git config --global alias.st status# 后面使用git st相當于使用git status
git st

好了,git常用的操作就說完了,大家根據自己工作中的需要各取所需。
:)~

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

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

相關文章

解鎖 MCP 中的 JSON-RPC:跨平臺通信的奧秘

你好,我是 shengjk1,多年大廠經驗,努力構建 通俗易懂的、好玩的編程語言教程。 歡迎關注!你會有如下收益: 了解大廠經驗擁有和大廠相匹配的技術等希望看什么,評論或者私信告訴我! 文章目錄 零、 背景一、RPC vs HTTP1.1 什么是RPC1.2 為什么需要 RPC?1.3 RPC 解決了什么…

【Redis】第1節|Redis服務搭建

一、Redis 基礎概念 核心功能 內存數據庫,支持持久化(RDB/AOF)、主從復制、哨兵高可用、集群分片。常用場景:緩存、分布式鎖、消息隊列、計數器、排行榜等。 安裝環境 依賴 GCC 環境(C語言編譯)&#xff0…

GitLab-CI簡介

概述 持續集成(CI)和 持續交付(CD) 是一種流行的軟件開發實踐,每次提交都通過自動化的構建(測試、編譯、發布)來驗證,從而盡早的發現錯誤。 持續集成實現了DevOps, 使開發人員和運維人員從繁瑣的工作中解…

FFmpeg解碼器配置指南:為什么--enable-decoders不能單獨使用?

FFmpeg解碼器配置指南 在FFmpeg的編譯配置過程中,許多開發者會遇到關于解碼器配置的困惑。特別是--enable-decoders這個選項,很多人誤以為啟用它就能自動包含所有解碼器。本文將深入解析FFmpeg解碼器配置的機制,并通過實際測試展示正確的配置…

C++多態與虛函數

C++多態與虛函數詳解 多態(Polymorphism)是 C++ 面向對象編程的重要特性,通過統一的接口實現不同的行為。虛函數(Virtual Function)是實現運行時多態的核心機制。以下從多態的構成條件、意義、析構函數的虛函數化、純虛函數和抽象類,以及虛函數表的底層實現依次介紹。 1.…

游戲引擎學習第313天:回到 Z 層級的工作

回顧并為今天的內容定下基調 昨天我們新增了每個元素級別的排序功能,并且采用了一種我們認為挺有意思的方法。原本計劃采用一個更復雜的實現方式,但在中途實現的過程中,突然意識到其實有個更簡單的做法,于是我們就改用了這個簡單…

ODBC簡介

ODBC(Open Database Connectivity)是一個由 Microsoft 制定的標準接口,允許不同的應用程序通過統一的方式訪問各種數據庫系統。 🧠 簡單理解: ODBC 就像是 “翻譯官”,在應用程序(如 Excel、Py…

RK3588 buildroot QT 懸浮顯示(OSD)

概述 主要介紹在rockchip rk3588 buildroot中 運行QT程序。需要結合之前的文檔:認識DRM顯示系統、buildroot中QT開發指導、以及如何集成QT庫到3588板子上。 場景:在linux開發中,需要使用QT開發程序,做OSD顯示。(如下圖顯示,顯示器播放視頻,QT頁面懸浮于視頻上方,顯示…

sockaddr_in

在網絡編程中&#xff0c;sockaddr_in 結構體是用于表示 IPv4 地址的套接字地址結構。它定義在 <netinet/in.h> 頭文件中&#xff0c;是 sockaddr 結構體的一個特化版本&#xff0c;專門用于處理 IPv4 地址。 下面是 sockaddr_in 結構體的典型定義&#xff1a; struct …

有銅半孔工藝的制造難點與工藝優化

技術難點剖析 有銅半孔工藝在制造過程中面臨多重挑戰&#xff0c;主要集中在材料加工精度、孔壁完整性及良率控制三個方面&#xff1a; 銅層翹起與毛刺殘留 半孔成型時&#xff0c;銑刀高速切割可能導致孔壁銅層被拉扯&#xff0c;產生翹起或殘留銅屑&#xff0c;影響導電性能…

云原生安全:網絡協議TCP詳解

&#x1f525;「炎碼工坊」技術彈藥已裝填&#xff01; 點擊關注 → 解鎖工業級干貨【工具實測|項目避坑|源碼燃燒指南】 &#xff08;注&#xff1a;文末附可視化流程圖與專有名詞說明表&#xff09; 1. 基礎概念 TCP&#xff08;Transmission Control Protocol&#xff09;是…

Dify中的Extension插件開發例子:以neko為例

本文使用Dify v1.0.0-beta.1版本。以neko為例&#xff0c;介紹Dify中的Extension插件開發例子。需要說明的是Dify官方要求Python≥3.12&#xff0c;但發現本地PyCharm調試Python≥3.12有問題&#xff0c;就采用的Python 3.11版本。 一.Extension插件項目創建 1.填寫插件信息 …

Linux中logger命令的使用方法詳解

文章目錄 一、基礎語法二、核心功能選項三、?設施與優先級對照?1. 常用設施&#xff08;Facility&#xff09;2. 優先級&#xff08;Priority&#xff09;從低到高&#xff1a;3. 組合示例? 四、典型使用場景1. 記錄簡單消息2. 帶標簽和優先級3. 記錄命令輸出4. 發送到遠程服…

【圖論 并集查找】P3671 [USACO17OPEN] Where‘s Bessie? S|普及+

本文涉及知道點 C圖論 C并集查找 預計2025年5月29號 7:00發布 P3671 [USACO17OPEN] Where’s Bessie? S 題目描述 Farmer John 一直以精通技術而聞名&#xff0c;他正在測試他的新型無人機搭載的奶牛定位相機。這款相機據說可以拍攝他的田地并自動確定奶牛的位置。不幸的是…

《軟件工程》第 13 章 - 軟件維護

知識思維導圖 13.1 軟件維護與進化的概念 1. 核心概念 軟件維護&#xff1a;軟件交付使用后&#xff0c;為糾正錯誤、改善性能或其他屬性而進行的修改過程軟件進化&#xff1a;隨著時間推移&#xff0c;軟件系統為適應環境變化和用戶需求而不斷演變的過程 2. 維護類型&#…

AI Agent助力醫療科研突破

最近&#xff0c;AI Agent在醫療科研領域的突破格外引人注目。非營利組織Future House宣布其多智能體系統Robin在約10周內&#xff0c;為干性年齡相關性黃斑變性&#xff08;dAMD&#xff09;發現了一種潛在新療法&#xff0c;這一成果展示了AI在加速科學發現&#xff0c;特別是…

(高級)高級前端開發者指南:框架運用與綜合實戰

當您已經掌握了HTML5、CSS3和JavaScript的基礎知識后&#xff0c;接下來就是學習現代前端框架和性能優化的高級階段。本文將重點介紹Vue.js/React的組件化開發、狀態管理和路由配置&#xff0c;以及前端性能優化的核心技巧。通過豐富的代碼示例和詳細講解&#xff0c;幫助您在實…

提示詞寫的好,用VSCODE+python+Claude3.5開發edge擴展插件(2)

導入文件夾: 導入擴展成功: 通過網盤分享的文件&#xff1a;Meteor New Tab.zip 鏈接: https://pan.baidu.com/s/1fXOhuoYboO_Afzqhuo5Eew?pwdxeix 提取碼: xeix edge收藏夾書簽過多時在擴展顯示可以搜索篩選,

CUDA加速的線性代數求解器庫cuSOLVER

cuSOLVER是NVIDIA提供的GPU加速線性代數庫&#xff0c;專注于稠密和稀疏矩陣的高級線性代數運算。它建立在cuBLAS和cuSPARSE之上&#xff0c;提供了更高級的線性代數功能。 cuSOLVER主要功能 1. 稠密矩陣運算 矩陣分解: LU分解 (gesvd) QR分解 (geqrf) Cholesky分解 (potrf…

Redis之金字塔模型分層架構

在分布式系統架構中&#xff0c;Redis 憑借其卓越的讀寫性能成為緩存層的核心組件。但如何精準判斷數據是否適合進入 Redis&#xff0c;以及如何科學量化 “高頻查詢” 標準&#xff0c;始終是高性能系統設計的關鍵課題。 數據訪問特征金字塔模型是用于評估數據是否適合進入 R…