看了廖雪峯的關於git的教程,這個常用指令其實幾年前就寫了,特此搬上來分享。也方便自己查看。
1.github使用手冊
github教程網址:
1.配置用戶名和郵箱:
$ git config --global user.name "Your Name" $ git config --global user.email "
[email protected]"
2.創建版本庫:
$ mkdir learngit $ cd learngit $ pwd//顯示當前目錄 /Users/michael/learngi
3.把當前目錄設置爲管理倉庫:
$ git init Initialized empty Git repository in /Users/michael/learngit/.git/
4.add文件和commit
$ add readme.txt
$ git commit -m "標籤"
5.查看工作區的變化
$ git diff 文件名
6.查看當前所有標籤
$ git log
6.1標籤簡略顯示
git log --oneline
6.2標籤一行顯示
git log --pretty=oneline
7.查看工作區狀態
$ git status
8.查看文件的變化
$ git diff 文件名
8.查看標籤庫中文件的變化
$ git diff HEAD -- 文件名
9.查看命令歷史
$ git reflog
10.版本回退
git reset --hard 版本號
11.工作區的文件回退到上一個版本
$ git checkout -- 文件名
(注意:只能改工作區的,也就是說你提交到標籤庫/暫緩區的的不能改)
12.刪除工作區的文件
$ rm 文件名
這時候提交到版本庫中的話版本庫也會刪除 就不能恢復了
13.恢復文件
在沒有將刪除操作提交到版本庫中的情況下使用以下命令可以恢復版本庫中的最新版本
$ git checkout -- 文件名
14.創建ssh祕鑰(分公鑰和私鑰)
15.創建遠程倉庫(本地倉庫與遠程倉庫關聯)
16.推送分支
$ git push -u origin master
16.推送更新到遠程倉庫(每次推送更新都要打這個命令)
$ git push origin master
17.克隆倉庫
“Nick-Hu1993”是github的用戶名
"gitskills.git"是遠程倉庫的倉庫名
18.選擇分支
$ git checkout 分支名
19.創建分支
$ git branch 分支名
19.1創建並切換到剛創建的分支
$ git checkout -b dev
20.查看所有分支
$ git branch
21.查看分支合併圖
git log --graph
22.合併分支
git merge 分支名
23.常用分支合併
$ git merge --no-ff -m "備註" 分支名
24.初始化倉庫
find . -name ".git" | xargs rm -Rf
25.保存當前的工作文件
git stash
26.遍歷出保存的工作文件
$ git stash list
27.恢復工作文件並刪除stash
git stash pop
28.銷燬feature分支(取消的功能分支)
$ git branch -d feature-vulcan
29.確認並強行刪除feature分支
$ git branch -D feature-vulca
30.顯示遠程倉庫的狀態
$ git remote -v
顯示你當前了抓取(fetch)和推送(push)權限
31.推送分支到遠程倉庫
$ git push origin 分支
32.多人協作
- 查看遠程庫信息,使用git remote -v;
- 本地新建的分支如果不推送到遠程,對其他人就是不可見的;
- 從本地推送分支,使用git push origin branch-name,如果推送失敗,先用git pull抓取遠程的新提交;
- 在本地創建和遠程分支對應的分支,使用git checkout -b branch-name origin/branch-name,本地和遠程分支的名稱最好一致;
- 建立本地分支和遠程分支的關聯,使用git branch --set-upstream branch-name origin/branch-name;
- 從遠程抓取分支,使用git pull,如果有衝突,要先處理衝突。
33.創建標籤
- 命令git tag <name>用於新建一個標籤,默認爲HEAD,也可以指定一個commit id;
- git tag -a <tagname> -m "blablabla..."可以指定標籤信息;
- git tag -s <tagname> -m "blablabla..."可以用PGP簽名標籤;
- 命令git tag可以查看所有標籤。
34.標籤管理
- 命令git push origin <tagname>可以推送一個本地標籤;
- 命令git push origin --tags可以推送全部未推送過的本地標籤;
- 命令git tag -d <tagname>可以刪除一個本地標籤;
- 命令git push origin :refs/tags/<tagname>可以刪除一個遠程標籤。
35.配置git私人服務器
36.git同步遠程倉庫的代碼
$git pull origin <要同步的線路名稱>