git常用操作命令

2021-08-21 18:55:48 字數 4207 閱讀 1776

git是乙個開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。git 是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體。

git 與常用的版本控制工具 cvs, subversion 等不同,它採用了分布式版本庫的方式,不必伺服器端軟體支援。

下面,請跟著 mobro 一起了解常用的 git 命令:

git config --global "user.name"

# 全域性配置使用者名稱

git config --global "user.email"

# email

git config user.name/user.email # 檢視使用者名稱/郵箱

ssh-keygen -t rsa -c "[email protected]"

# 建立ssh key

## 公鑰是要放在 github 上,金鑰就不必了

ssh -t [email protected] # 檢查連線是否成功

git remote add origin git@server-name:path/repo-name.git

# 與遠端倉庫建立連線

# eg: git remote add origin [email protected]:mobrochu/mine.git

git branch          # 檢視當前分支  

git branch

# 建立乙個 name 的分支

git branch -m a b # 將原來為a的分支,改名成 b

git branch -m c # 將當前分支改名為 c

git branch -d e # 刪除分支

git branch -d f # 強行刪除

git branch

# 恢復被刪除的分支

git branch --set-upstream branch-name origin/branch-name

# 建立本地分支和遠端分支的關聯

git push origin :g # 刪除遠端倉庫的g分支

git checkout -b a # 建立a分支,並切換到a分支下

git checkout a # 從當前分支切換到a分支下

git merge a # 將a分支合併到當前分支

git merge --no-off -m "合併分支後會生成乙個 commit" a

--no-off # 不使用 fast forward 模式合併分支

-m ""

# 因為合併分支後會生成一次 commit,所以把描述寫上

# 合併分支時,加上--no-ff引數就可以用普通模式合併,合併後的歷史有分支,能看出來曾經做過合併,而fast forward合併就看不出來曾經做過合併。

git status          # 檢視當前倉庫狀態

git log # 檢視日誌

git reflog # 檢視命令記錄

gitdiff

# 檢視暫存區filename這個檔案與倉庫中filename檔案的不同

gitdiff head --

# 檢視工作區和版本庫裡面最新版本中filename的區別

git reset head

# 撤銷快取區的修改

git reset --hard head/head~100/版本號 #版本回退

## head 指向的是當前版本

## head~100 從當前版本向前退100個版本

## 版本號 不用全部複製,只需要版本號的前幾位就好了

git add # 將檔案新增到要提交的佇列中

git commit -m "***"

# 提交的到暫存區,並新增注釋***

git commit -am "***"

# ===> git add , git commit -m "***"

git push -u origin a # 推送到遠端倉庫

## -u 一般情況下,第一次才有,方便以後推送或者拉去,可以簡化命令

## origin 遠端倉庫名,可以換,但很少有人去換

## a 要推送到a分支下

git stash           # 新增儲藏

git stash push -m "注釋內容"

git stash list # 檢視儲藏

# 使用 num 這個版本號的 stash, 其中 num 為數字

git stash pop stash@

git stash drop # 刪除儲藏

git log --graph --pretty=oneline --abbrev-commit   # 檢視分支的合併情況

--graph # 顯示分支合併情況

--pretty=oneline # 以精簡形式顯示,oneline 表示一次提交只顯示一行

--abbrev-commit # 提交記錄的雜湊值不用全部顯示

git remote          # 檢視遠端庫資訊

git remote -v # 檢視遠端庫詳細資訊

## 列印的資訊

origin [email protected]:mobrochu/blog.git (fetch)

origin [email protected]:mobrochu/blog.git (push)

上面顯示了可以抓取和推送的 origin 的位址。如果沒有推送許可權,就看不到 push 的位址。

git pull            # 拉取遠端當前分支的最新**

# 把所有的remote變化都拉下來,並且將你最新的commit置於最頂上

git rebase # 把本地未push的分叉提交歷史整理成直線

git tag a commitid/head         # 新建乙個標籤,預設為head,也可以指定乙個 commitid

git tag -a a -m "blablabla..."

# 指定標籤描述資訊

git tag # 檢視所有標籤

git tag -d a # 刪除標籤 a

git push origin a/--tag # 推送 a 標籤 / 或者全部推送

# 刪除遠端 tag, 需要以下兩步

git tag -d a

git push origin :refs/tags/a # 刪除遠端

git revert -1 版本id 	# 回滾保留提交記錄

git reset --hard 版本id # 回滾不保留提交記錄

git cherry-pick 開始版本id..結束版本id # 選擇性複製提交

# 目錄下操作 /users/mobro/.android

# 老證書轉成pkcs12標準證書

keytool -importkeystore -srckeystore easywin.keystore -destkeystore easywin.keystore -deststoretype pkcs12

# pkcs12證書生成

keytool -genkey -v -alias p12client -keyalg rsa -storetype pkcs12 -validity 20000 -keystore /users/mobro/.android/abctest.keystore

# 老標準生成

keytool -genkey -v -keystore android.keystore -alias android -keyalg rsa -validity 20000 -keystore /users/mobro/。android/easywin.keystore

# 檢視證書詳細資訊

keytool -list -v -keystore easy_win.keystore

學無止境,還有許多命令,待後續補齊。just 未完待續、

Git常用操作命令

git常用操作命令收集 1 遠端倉庫相關命令 檢出倉庫 git clone git 檢視遠端倉庫 git remote v 新增遠端倉庫 git remote add name url 刪除遠端倉庫 git remote rm name 修改遠端倉庫 git remote set url push ...

Git常用操作命令

git常用操作命令收集 1 遠端倉庫相關命令 檢出倉庫 git clone git 檢視遠端倉庫 git remote v 新增遠端倉庫 git remote add name url 刪除遠端倉庫 git remote rm name 修改遠端倉庫 git remote set url push ...

Git常用操作命令

git常用操作命令收集 1 遠端倉庫相關命令 檢出倉庫 git clone git 檢視遠端倉庫 git remote v 新增遠端倉庫 git remote add name url 刪除遠端倉庫 git remote rm name 修改遠端倉庫 git remote set url push ...