初始化git
- . git init 初始化一個git resposity
- git add 添加到暫存區(紅色表示沒到暫存區)
- git add .表示把所有工作區的添加到
- git commit -m"message" 添加文件到倉庫 (綠色表示沒提交)
- git commmit -am"message"直接可以從工作區到master
- git diff 比較本地文件和倉庫里面的不同
- git log --pretty=oneline 使得日志在一行顯示
git原理圖:
git原理圖
- git diff 比較工作區跟暫存區
- git diff --cached 比較暫存區跟HEAD
- git diff HEAD 比較工作區跟HEAD
- git reset HEAD HEAD覆蓋暫存區(顯示未add到暫存區)
- git checkout -- <file> 暫存區覆蓋工作區(整個工作區變得干凈啦)
- git checkout HEAD <file> HEAD覆蓋暫存區和工作區
- git rm file 會將文件從緩存區和你的硬盤中(工作區)刪除
- git rm --cached 只刪除暫存區,不刪除工作區
- rm file 只刪除工作區
- cat file查看文件內容
連接遠程github
- git remote add origin git@git.coding.net:tengj/gitLearn.git 連接遠程倉庫
- git push -u origin master 正式push(正式推送到)
添加和生產公鑰
$ ssh-keygen -t rsa -C "your_email@example.com"
git遠程操作
- git branch 查看當前分支
- git branch -v 查看每一個分支的最后一次提交
- git branch -a 查看本地和遠程分支的情況
- git branch --merged 查看已經與當前分支合并的分支
- git branch --no-merged 查看已經與當前分支未合并的分支
- git branch -r 查看遠程分支
- git branch dev 創建分支 dev
- git checkout dev 切換到分支dev
- git checkout -b dev 創建并切換分支dev
- git merge dev 名稱為dev的分支與當前分支合并
- git branch -d dev 刪除分支dev
當我們push origin master時候報錯,我們應該git pull origin dev.解決好沖突后,再按這樣一樣提交上去。
git push origin master:dev 推送到遠程的dev分支上,若沒有,則新建。
一般先git fetch下。用git log -p master..origin/dev 比較不同之處。解決沖突,則直接更新。
Git fetch origin master。git log -p master..origin/master。git merge origin/master