Git 基本操作

2021-07-27 07:40:46 字數 4551 閱讀 1185

命令列操作(由於是linux命令列下的普通使用者,都是在$級別下操作):

一. 本機配置

新增使用者 

git config –global user.name 「xx」 

git config –gloaba user.email 「[email protected]

檢視git配置及使用者資訊 

git config –list

生成ssh秘鑰(2種方式:1.git gui圖形介面化操作; 2.git命令,即以下流程) 

1) 檢視是否有秘鑰,有則備份然後刪除資料夾 

cd ~/.ssh 

ls 2) 正式生成,輸入指令再 按三次回車,也就是第三次回車指紋密碼輸入可以為空 

ssh-keygen -t rsa -c 「郵箱」 

3) 新增私鑰到 ssh(如果配置過指紋密碼就要輸入驗證) 

ssh -add id_rsa

進入計算機系統使用者資料夾,找到id_rsa.pub,開啟複製到github的setting的ssh keys當中( 

該**伺服器可以新增多個ssh key公鑰)

測試本機是否有訪問github的許可權 

ssh [email protected]

二. 上傳github了ssh後,開始建立兩端的repository(版本庫,倉庫) 並且相關聯.

建立過程(2種方式):

先在本地新建->然後新增到遠端端(具體步驟): 

git init->git remote add origin git@***->在倉庫新增一些初始檔案xx-> 

git add xx->git status->git commit -m 「初始化倉庫」->git status->git commit -a->編寫你的**-> 

修改之前提交過的檔案->git diff xx->解決衝突之後提交

git clone xx 轉殖倉庫

以下只是本地建立工作區等操作 

cd d: 

cd git 

mkdir firstprogram 

cd firstprogram 

pwd(意思是檢視」當前工作目錄「的完整路徑) 

git init(這個目錄變成git可以管理的倉庫,完成到這一步可以直接git remote add了) 

git add readme.txt(新增到暫存區裡) 

git status(未提交時 出現紅色提醒) 

git commit -m 『提交時的注釋 描述』 

git status(提交後 出現綠色提醒) 

git commit -a(自動更新變化的檔案,auto) 

git diff readme.txt(用來檢視修改前後的對比,在有修改時使用) 

git log(檢視提交歷史,倒序記錄: 資訊包括提交版本號,作者,時間,提交內容) 

git log –pretty=oneline(簡要檢視歷史,每次修改顯示在一行) 

git reset –hard head^(把當前的版本回退到上1個版本) 

git reset –hard head^^(把當前的版本回退到上上1個版本) 

git reset –hard head~100(把當前的版本回退到上100個版本) 

git checkout –readme.txt(會撤銷修改但還沒新增到快取區stage的內容) 

git reflog 

git reset -hard 版本號

//檢視內容 

cat readme.txt 

//刪除檔案 

rm b.txt 

git remote rm ***(刪除遠端端倉庫***, 比如origin是遠端倉庫《即url位址》別名) 

git push -u sie-remote master(將本地檔案提交到github的sie-remote版本庫中《或者origin,版本庫的名字》。此時才更新了本地變更到github服務上.master是分支的意思) 

//分支建立 

git branch (顯示當前分支,如:master) 

git branch sie-branch(建立分支) 

git checkout sie-branch(切換到新分支) 

//從已有的分支建立新的分支(如從master分支),建立乙個dev(develop簡寫)分支(相當於複製分支) 

git checkout -b dev 

//把分支push到遠端分支–>可以看到遠端分支是push時產生的 

vi page_cache.inc.php 

git add page_cache.inc.php 

git commit -a -m 「added initial version of page cache」 

git push origin sie-branch(把分支提交到遠端伺服器,只是把分支結構和內容提交到遠端,並沒有發生和主幹的合併行為) 

//另一種push分支,如果是在當前loc-dev分支下,則可以只寫git push 

git push origin loc-dev:remote-branch-dev 

//分支拉取 

git pull origin dev 

或者: 

執行git fetch(前提是已經關聯了本地與遠端),可以將遠端分支資訊獲取到本地, 

再執行git checkout -b loc-v2 origin/remote-branch-v2就可以將遠端分支對映到本地命名為loc-v2的一分支 

//本地分支合併 

git checkout master(切換到新主幹) 

git merge sie-branch(把分支合併到主幹) 

//遠端分支合併(多乙個遠端位址和乙個反斜槓/) 

git merge origin/b 

git branch(顯示當前分支是master) 

git push(此時主幹中也合併了sie-branch的**) 

//衝突解決(updated upstream 與==== 之間的是pull下來的內容,若不需要則刪除,也可以刪除本地的那一行) 

git stash(暫存本地內容) 

git pull 

git stash pop stash@修改標記,還原暫存的內容} 

//刪除分支(前提是被刪除的分支不是當前所在分支,否則刪除不了) 

git pull origin –delete dev 

//另一種刪除分支 

git push origin :dev 

//消除master分支的追蹤 

設定指定分支 

git branch –set-upstream-to=origin/dev 

取消對master的跟蹤 

git branch –unset-upstream master

三. 概念分析

工作區: 一般就是工程區或者模組區(也就相當於android studio的專案名稱根目錄),但是工作區下面的 

隱藏資料夾.git不屬於工作區 

版本庫: 就是.git目錄.版本庫裡面存了很多東西,其中最重要的就是stage(暫存區),還有git為我們自動建立了第一 個分支master,以及指向master的乙個指標head。

四. 其他操作

1.顯示所有的遠端倉庫 

git remote -v 

origin [email protected]:projects/search.git (fetch) 

origin [email protected]:projects/search.git (push) 

github [email protected]:yyfrankyy/search.git (fetch) 

github [email protected]:yyfrankyy/search.git (push) 

2.重新命名遠端倉庫 

git remote rename github gh 

git remote 

origin 

gh 3.刪除遠端倉庫 

git remote rm github 

git remote 

origin 

4.從遠端倉庫抓取資料,更新本地倉庫: 

$: git fetch origin 

remote: counting objects: 58, done. 

remote: compressing objects: 100% (41/41), done. 

remote: total 44 (delta 24), reused 1 (delta 0) 

unpacking objects: 100% (44/44), done. 

from git: 

* [new branch] product -> origin/product 

5.檢視遠端倉庫資訊,可用於跟蹤別人的push: 

git remote show origin

Git基本操作

1.初始化倉庫 git init 2.配置作者資訊 git config global user.email youremail corp.com git config global user.name yourname 3.新增檔案到暫存區 git add git add 新增所有檔案到暫存區 4...

git基本操作

1.先建乙個資料夾 mikdir gittest 這時就會有乙個gittest資料夾,cd gittest 進入這個資料夾 ls一下,就會看到gittest下沒有東西 2.生成乙個git git init cat git 顯示一下所有git 3.建乙個檔案 touch readme.md 這時git...

Git基本操作

21 nov,錦州 同生活中的許多偉大事件一樣,git 誕生於乙個極富紛爭大舉創新的年代。linux 核心開源專案有著為數眾廣的參與者。絕大多數的 linux 核心維護工作都花在了提交補丁和儲存歸檔的繁瑣事務上 1991 2002年間 到 2002 年,整個專案組開始啟用分布式版本控制系統 bitk...