Git指令整理
準備工作
mkdir foldername //創建文件夾cd foldername //進入文件夾
mkdir foldername && cd foldername //創建文件夾并進入
git init //初始化 讓這個目錄成為git倉庫
git status //查看倉庫當前狀態
git log //查看工作日志 //q退出
git log --pretty=oneline //單行輸入日志</pre>
提交操作
git add readme.txt //添加文件到倉庫git commit -m "update info" //從緩沖區更新到版本庫
git commit -a -m "update info"http://從工作區一次性更新到版本庫</pre>
對比操作
git diff readme.txt //工作區和緩沖區的文件內容差異git diff --cached //緩沖區和版本庫的文件內容差異
git diff master //工作區和版本庫的內容差異</pre>
撤銷操作
git reset HEAD <filename> //從緩沖區撤銷回工作區git checkout -- <filename> //工作區撤銷回版本區的狀態
git commit -m "info" --amend //從緩沖區撤銷回工作區,然后再重新提交</pre>
刪除操作
rm <filename> //刪除文件git rm <filename> //緩沖區刪除文件,前提是工作區已經刪除了該文件
git rm -f <filename> //緩沖區刪除文件,工作區也一并刪除了
git rm --cached <filename> //緩沖區刪除文件,工作區不刪除</pre>
恢復操作
//HEAD指向的版本就是當前版本,因此,Git允許我們在版本的歷史之間穿梭git checkout <commit id> <filename> //工作區刪除文件,從指定版本庫中恢復文件
git checkout test.txt//從版本庫恢復
git reset --hard <commit id> //退回具體版本
git reset --hard HEAD^ //退回上一個版本
git reset --hard HEAD~<num> //退回指定數字前版本
git reflog //記錄每一次命令</pre>
穿梭前,用git log可以查看提交歷史,以便確定要回退到哪個版本。
要重返未來,用git reflog查看命令歷史,以便確定要回到未來的哪個版本。
遠程倉庫操作
當你從遠程倉庫克隆時,實際上Git自動把本地的master分支和遠程的master分支對應起來了,
并且,遠程倉庫的默認名稱是origin。
//先有本地庫 后有遠程庫 git remote add origin git@github.com:Aralic/learngit.git //關聯遠程庫git push -u origin master// 本地同步到github上
//先有遠程庫 克隆到本地 git clone git@github.com:Arliac/gitskills.git
git checkout -b dev //創建分支
git checkout master //切換回master 分支
git branch //查看當前分支
git merge dev //在master分支下 合并dev分支
git branch -d dev //刪除dev分支
git remote //查看遠程庫名字
git remote -v// 查看更詳細信息
git push origin master//推送分支
git push origin dev //推送分支</pre>
遠程倉庫/代碼沖突
git fetch //同步遠程倉庫git diff master origin/master //查看一下和遠程同步過來的代碼差異
git merge origin/master //和遠程倉庫代碼 合并到本地
git pull //直接和遠程倉庫合并代碼</pre>
更多詳情: http://www.liaoxuefeng.com/
原文 http://www.cnblogs.com/Aralic/p/4593032.html