Linux:Git

Git常見指令:

git  help  xx_command
git  xx_command  --help git   --version                            查看git版本git config --global user.name  "xxx_name"       全局級別的簽名設置,全局的放在本用
git config --global user.email "xxx@gmail.com"  戶的家目錄下的.gitconfig文件中git config user.name "xxx_name"            項目級別的簽名設置,放在工作倉庫的.git/config里面
git config user.email "xxxxx@gmail.com"    項目級別的簽名設置,放在工作倉庫的.git/config里面git config --list                        查看配置
git config --global --list               查看全局配置
git config --global --edit               編輯全局配置git init                                 初始化本地倉庫,會在當前目錄下創建一個.git的目錄git status                               查看倉庫當前狀態
git status  -uno                         查看倉庫當前狀態,忽略未跟蹤的文件git add  [file name]                     本地寫好的文件放到暫存區域git add .                              等于 git add -A 或者 git add --allgit add 這個命令處理后面可以增加 pathname,也可以增加參數git add 默認不加參數,表示他會監控工作區的狀態,使用它會把工作時的所有變化提交到暫存區,包括文件內容修改(modified)以及新文件(new),但不包括被刪除的文件。git add -u(--update),僅添加已經被git跟蹤的文件(tracked file),會將修改(文件內容修改和文件刪除)的文件提交到暫存區。git add -u 不會提交新文件(untracked file)。git add --all(-A, --no-ignore-removal),是上面兩個的合集,即會把修改的文件加到暫存區,也會把新建的文件加到暫存區,同時還會把已經工作區刪除了的文件從暫存區刪除掉。git restoregit restore --staged                 將暫存區的文件從暫存區撤出,但不會更改文件文件的內容。git restore xxx                      撤銷在工作空間但是不在暫存區的文件更改,如恢復工作區刪除的文件xxxgit rm --cached <file>...                刪除暫存區域的文件,和本地區域沒關系git commit  [file name]                  把暫存區域內容,維護到本地倉庫git commit -agit commit -m "commit message" [file name]    不進入到文本模式,進行更改記錄的添加git commit --message="commmint message log" [file name]git commit --amend                   修正上次的提交,可以使用上一次的提交信息,也可以對上次提交的內容進行修改。git commit -m "xxx" 提交之后,發現-m的說明文字寫的有問題,想要重新寫提交信息,或者又修改了某些文件,利用上次的提交信息并作部分修改,這個時候可以用命令 git commit --amend  -m "xxx"  覆蓋上一次的提交信息進行commit提交,且上次的提交信息不會出現在提交 git log中git commit -s -m XXX                 在git log 的時候會多展示 signed-off-by  行git commit -a -m XXX                 相當于先git add .  再git commit -m  XXXgit log                                  查看版本的更新日志,使用空格一屏一屏的切換git log --stat                           查看提交記錄,顯示文件列表改動,不包括內容改動git log -n                               n表示只顯示最近n次的記錄git log --pretty=oneline                 每次提交顯示一行(全hash值)git log --oneline                        每次提交顯示一行(哈希值的前7位)git reflog                               HEAD@{x}中x表示從當前版本回退到某個版本HEAD指針要移動的次數git log --oneline --decorate --graph --all   圖像化的方式顯示出分支創建后的版本迭代過程git log --oneline --graphgit log --oneline -n --graph             n表示只顯示最近n次的記錄git log -- filename(git log filename)    可以看到該文件相關的commit記錄git log -p filename                      可以顯示該文件每次提交的difflog一頁顯示不全,英文狀態下按Q退出git log 命令,按空格或者回車顯示下面的信息git reset    
--hard                            git reset --hard                       查看當前HEAD指向的版本git reset --hard  xxxxxxx              基于索引值(哈希值),xxxxxxx就是哈希值的前幾位git reset --hard  HEAD^                基于^符號,只能向老版本回滾,不能向新版本回滾。向后回滾一個版本,HEAD后面的就一個^;向后回滾2個,在HEAD后面就使用兩個^^git reset --hard  HEAD~n               基于~符號。只能向后回滾,回滾版本數n。git reset -–hard origin/master         回退到與遠程master代碼一樣
--hard這個參數在一定情況下會有一定的危險。比如在工作區內容沒提交工本地庫之前,使用了--hard命令把本地庫的內容重置到工作區和暫存區,會導致工作區更改的內容丟失。git reset --mixed
git reset --softgit branch\ git checkoutgit branch   分支名xx                     創建分支xxgit checkout 分支名xx                     切換到分支xxgit checkout -b 分支名xx                  基于當前分支(commit)創建并切換到分支xxgit checkout -b 分支名xx commit_id        基于commit_id創建并切換到分支xxgit checkout commit_id                    基于commit_id切到臨時分支,可用于實驗性修改git branch -d xx                          刪除分支xxgit branch -D xx                          強制刪除分支xxgit branch                                列出當前分支清單,列出所有分支git branch -a                             查看遠程分支和本地分支git branch -r                             查看遠程的分支名git branch -v                             查看各個分支最后一個提交信息git branch --merged                       查看哪些分支已經合并入當前分支git merge 要合并的(from)分支名稱       要先切換到接受修改的(to)分支上,由接受修改的分支來執行merge合并命令git commit -m "commit msg"                分支沖突解決后,提交不能有文件名git remote -v                             查看當前的遠程倉庫連接
git remote add origin URL                 為遠程庫取個別名,叫origingit pushgit push <遠程主機名> <本地分支名>  <遠程分支名>    如 git  push  origin  master:refs/for/master   將本地的master分支推送到遠程主機origin上的對應master分支, origin 是遠程主機名,第一個master是本地分支名,第二個master是遠程分支名。git push origin master             如果遠程分支被省略,如上則表示將本地分支推送到與之存在追蹤關系的遠程分支(通常兩者同名),如果該遠程分支不存在,則會被新建git push -u origin master          如果當前分支與多個主機存在追蹤關系,則可以使用 -u 參數指定一個默認主機,這樣后面就可以不加任何參數使用git pushgit push origin               如果當前分支與遠程分支存在追蹤關系,則本地分支和遠程分支都可以省略,將當前分支推送到origin主機的對應分支 git push                      如果當前分支只有一個遠程分支,那么主機名都可以省略,形如 git push,可以使用git branch -r ,查看遠程的分支名git clonegit clone URL           1完整的把遠程庫下載到本地  2創建origin遠程庫別名  3初始化本地庫git clone -b 分支名  倉庫地址  存放路徑    克隆指定的分支到本地目錄,然后在該目錄下push時,對應的就是push到遠端的對應分支。git clone --recursive URL     遞歸克隆項目下面的所有git項目git fetch [遠程庫別名] [遠程庫分支]     將遠程主機的內容拉到本地,不合并
git merge [遠程庫別名/遠程庫分支]       本地合并遠程庫內容
當然上面這兩步可以用一個操作 git pull 來統一完成git pullgit pull 命令的作用是:將遠程主機的內容拉下來后直接合并,即:git pull = git fetch + git merge,可能會產生沖突,需要手動解決。它的完整格式稍稍有點復雜。git pull [<options>] [<repository> [<refspec>…?]]git pull  <遠程主機名>   <遠程分支名>:<本地分支名>比如,要取回origin主機的next分支,與本地的master分支合并,需要寫成下面這樣:git pull origin next:master如果遠程分支(next)要與當前分支合并,則冒號后面的部分可以省略。上面命令可以簡寫為:git pull origin next什么時候使用  git pull [遠程主機名] [遠程分支名] [本地分支名]  ?修改比較簡單,確定不會產生合并沖突的時候。什么時候使用git fetch [遠程主機名] [遠程分子名],git merge [遠程庫名/遠程分支名] [本地分支]遠程倉庫的修改可能和本地倉庫產生沖突的時候,可以先把遠程倉庫的放到本地。經過對比之類后,再進行合并(也要解決沖突)。git rm如果是對所有文件都取消跟蹤的話,就是git rm -r --cached .   //不刪除本地文件git rm -r --f .        //刪除本地文件對某個文件取消跟蹤git rm --cached readme1.txt    刪除readme1.txt的跟蹤,并保留在本地。git rm --f readme1.txt         刪除readme1.txt的跟蹤,并且刪除本地文件。當需要刪除暫存區或分支上的文件, 但本地又需要使用, 只是不希望這個文件被版本控制, 可以使用 git rm --cached xxxgit rm --cached 會從index里面刪除該文件,下次commit的時候會修改git倉庫,但是本地的文件還是保留git blame                        顯示文件的每一行最后修改的版本和作者用法:git blame [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-e] [-p] [-w] [--      incremental] [-L n,m]  [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>] [--abbrev=<n>]  [<rev> | --contents <file> | --reverse <rev>] [--] <file>例如,git blame -L 100,120   xx.cgit diffgit diff    //比較工作區與暫存的(git add 后)的差別,一個文件可以在commit之前多次addgit diff --cached || --staged          //比較暫存區文件 與上一次commit 的差別git diff branch1 branch2 --stat        //顯示出所有有差異的文件列表git diff branch1 branch2 具體文件路徑   //顯示指定文件的詳細差異git diff branch1 branch2               //顯示出所有有差異的文件的詳細差異

Linux下Git倉庫管理:

?

?

.gitignore 凡是在這個文件內部的后綴,對應的文件,不會被上傳到gitee上!
.git 所謂的git倉庫,本質就是一個目錄,.git文件里面的內容。
push:本質上就是將.git里面的內容同步到gitee上去,也就是上傳本地內容!

日志不能亂寫!git log

如果Linux沒有安裝Git :sudo apt?install git?,當你首次安裝Git時,會提示你進行配置用戶名和郵箱。

向Gitee提交流程:

mkdir example
mv /path /path/example/
git add [文件名]  #添加到暫存區 add .
git commit .  #提交改動到本地
git push     #同步到遠端服務器上,需要填用戶名和密碼
git status   #查看git的變化
git rm filename #刪除倉庫文件,再commit,再push
git log  #查看日志
git pull #如果遠端對文件修改,則本地同步

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

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

相關文章

【WiFi】WiFi中RSSI、SNR、NF之間關系及說明

RSSI&#xff08;接收信號強度指示&#xff09; 定義&#xff1a; RSSI 是一個相對值&#xff0c;用于表示接收到的無線信號的強度。它通常由無線設備的硬件&#xff08;如無線網卡或無線芯片&#xff09;直接提供。 計算&#xff1a; RSSI 的計算通常是由設備的無線芯片完成的…

提升音頻轉錄準確性:VAD技術的應用與挑戰

引言 在音頻轉錄技術飛速發展的今天&#xff0c;我們面臨著一個普遍問題&#xff1a;在嘈雜環境中&#xff0c;轉錄系統常常將非人聲誤識別為人聲&#xff0c;導致轉錄結果出現錯誤。例如&#xff0c;在whisper模式下&#xff0c;系統可能會錯誤地轉錄出“謝謝大家”。本文將探…

[ZMQ] -- ZMQ通信Protobuf數據結構 1

1、前言背景 工作需要域間實現zmq通信&#xff0c;剛開始需要比較簡單的數據結構&#xff0c;比如兩個bool&#xff0c;后面可能就需要傳輸比較大的數據&#xff0c;所以記錄下實現流程&#xff0c;至于為啥選擇proto數據結構去做大數據傳輸&#xff0c;可能是地平線也用這個&…

順序表的使用,對數據的增刪改查

主函數&#xff1a; 3.c #include "3.h"//頭文件調用 SqlListptr sql_cerate()//創建順序表函數 {SqlListptr ptr(SqlListptr)malloc(sizeof(SqlList));//在堆區申請連續的空間if(NULLptr){printf("創建失敗\n");return NULL;//如果沒有申請成功&#xff…

React和Vue中暴露子組件的屬性和方法給父組件用,并且控制子組件暴露的顆粒度的做法

React 在 React 中&#xff0c;forwardRef 是一種高級技術&#xff0c;它允許你將 ref 從父組件傳遞到子組件&#xff0c;從而直接訪問子組件的 DOM 節點或公開的方法。這對于需要操作子組件內部狀態或 DOM 的場景非常有用。為了使子組件能夠暴露其屬性和方法給父組件&#xf…

《C++ 實時視頻流物體跟蹤與行為分析全解析》

在當今科技飛速發展的時代&#xff0c;視頻監控與智能分析技術在眾多領域發揮著極為重要的作用。從安防監控到智能交通&#xff0c;從工業自動化到人機交互&#xff0c;利用 C 處理實時視頻流中的物體跟蹤和行為分析成為了熱門且極具挑戰性的研究與開發方向。本文將深入探討其中…

5G中的隨機接入過程可以不用收RAR?

有朋友提到了一種不用接收RAR的RA過程&#xff0c;問這個是怎么回事。其實在剛剛寫過的LTM cell switch篇章中就有提到&#xff0c;這里把所有相關的內容整理如下。 在RACH-less LTM場景&#xff0c;在進行LTM cell switch之前就要先知道target cell的TA信息&#xff0c;進而才…

git 導出某段時間修改的文件 windows

第一步&#xff1a;列出兩次commitID之間的文件變動 git diff oldid newid --name-only// 例如 git diff 4a886c57a8b5611a2abcfcd120461c2e92f7029a HEAD --name-only 4a886c57a8b5611a2abcfcd120461c2e92f7029a 代表之前 HEAD 代表最新或者換成某次commitID 例如&#xf…

Qt 聯合Halcon配置

文章目錄 配置代碼窗口綁定 配置 選擇添加庫 選擇外部庫 LIBS -LC:/Program Files/MVTec/HALCON-17.12-Progress/lib/x64-win64/ LIBS -lhalconcpp\-lhdevenginecpp\-lhalconINCLUDEPATH C:/Program Files/MVTec/HALCON-17.12-Progress/include DEPENDPATH C:/Program Fil…

new URL(`../assets/images/${name}`, import.meta.url).href

背景&#xff1a; 文章講述了Vite框架中關于資源文件&#xff08;如圖片&#xff09;在默認配置下&#xff0c;如何正確處理開發環境和打包后的不同引用方式。重點介紹了使用import.meta.url和new URL() 來動態獲取并處理靜態資源URL的方法&#xff0c;以及注意事項&#xff0…

8、筆記本品牌分類介紹:LG - 計算機硬件品牌系列文章

LG筆記本品牌以其高性能和先進技術而聞名&#xff0c;?提供多種型號以滿足不同用戶的需求。? LG筆記本產品線包括多種類型&#xff0c;?以滿足不同用戶的需求。?其中&#xff0c;?LG Gram Pro系列以其超薄設計和高性能配置受到關注。?該系列筆記本采用16:10的OLED顯示屏&…

367_C++_計算mouse移動過程中,視頻框的右側、底部邊距,以及根據實時的右側、底部邊距計算—視頻框的左上角位置

代碼分析 1. restorePos 方法 restorePos 的作用是恢復 NavigationFrame 的位置,將其移動到父窗口或者指定矩形內的特定位置。 void NavigationFrame::restorePos() {// 獲取目標矩形:優先使用 `m_pRect`,否則默認使用視頻區域或父窗口區域RSRect videoRect(m_pVide

Tiptap,: 富文本編輯器入門與案例分析

Tiptap 是一個現代的富文本編輯器&#xff0c;基于 ProseMirror 打造&#xff0c;旨在提供一個靈活且功能強大的文本編輯解決方案。它具有開箱即用的能力&#xff0c;同時也允許開發者根據業務需求進行高度定制化擴展。與傳統的富文本編輯器相比&#xff0c;Tiptap 提供了更精細…

scala的泛型類

泛型&#xff1a;類型參數化 泛型類指的是把泛型定義到類的聲明上, 即:該類中的成員的參數類型是由泛型來決定的. 在創建對象時, 明確具體的數據類型. 定義格式: class 類名&#xff08;成員名&#xff1a;數據類型&#xff09; class 類名[泛型名](成員名:泛型名) 參考代…

對比損失(Contrastive Loss)與大模型:Contrastive Loss and Large Models (中英雙語)

對比損失&#xff08;Contrastive Loss&#xff09;與大模型&#xff1a;從原理到實踐 在現代深度學習中&#xff0c;對比損失&#xff08;Contrastive Loss&#xff09;是一種核心技術&#xff0c;尤其是在對比學習&#xff08;Contrastive Learning&#xff09;中被廣泛使用…

Java基礎學習:java常用啟動命令

一、java -jar 1、系統屬性傳遞 使用形式&#xff1a;java -DpathD:\jacoco -jar 獲取方式&#xff1a;System.getProperties() 2、系統參數傳遞 使用形式&#xff1a;java -jar application.jar --jacocoPathD:\tomcat 獲取方式&#xff1a;通過啟動方法入口main的參數arg…

Linux下SVN客戶端保存賬號密碼

參考文章&#xff1a;解決&#xff1a;Linux上SVN 1.12版本以上無法直接存儲明文密碼_linux svn 保存密碼-CSDN博客新版本svn使用gpg-agent存儲密碼-CSDN博客svn之無法讓 SVN 存儲密碼&#xff0c;即使配置設置為允許_編程設計_ITGUEST 方法一&#xff1a;明文方式保存密碼 首…

負載均衡oj項目:介紹

目錄 項目介紹 項目演示 項目介紹 負載均衡oj是一個基于bs模式的項目。 用戶使用瀏覽器向oj模塊提交代碼&#xff0c;oj模塊會在所有在線的后端主機中選擇一個負載情況最低的主機&#xff0c;將用戶的代碼提交給該主機&#xff0c;該主機進行編譯運行&#xff0c;將結果返回…

gateway 微服務的入口-筆記

本文屬于b站圖靈課堂springcloud筆記系列。講的好還不要錢&#xff0c;值得推薦。 為什么需要API網關&#xff1f; 客戶端多次請求不同的微服務&#xff0c;會增加客戶端代碼和配置的復雜性&#xff0c;維護成本比價高認證復雜&#xff0c;每個微服務可能存在不同的認證方式&…

vue2+element-ui實現多行行內表格編輯

效果圖展示 當在表格中點擊編輯按鈕時:點擊的行變成文本框且數據回顯可以點擊確定按鈕修改數據或者取消修改回退數據: 具體實現步驟 1. 行數據定義編輯標記 行數據定義編輯標記 當在組件中獲取到用于表格展示數據的方法中,針對每一行數據添加一個編輯標記 this.list.f…