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 ...