git筆記
cd project 進入工作資料夾內
git init 初始化
git — version 查看版本
設定
git config — global user.name “username”
git config — global user.email ”email@gmail.com”
git config — list 檢視config設定
git status 檢視狀態
三種狀態
工作目錄 「add」 索引 「commit」 本地數據庫 「push」 遠端設據庫
遠端數據庫 「clone/fetch」本地數據庫 「checkout」工作目錄
git add .
git commit -m “some message”
git log 檢視歷次的更新
git checkout “編號“ 回到過去的版本
git checkout master 回到現在的版本
git remote檢視有幾個遠端數據庫
git remote add orign(name) https:\\(網址)
本地數據庫上傳遠端數據庫
git push -u orgin(name) master
遠端數據庫更新至本數據庫
git pull
遠端數據庫更新到本地數據庫
git clone 網址
查詢遠端數據庫列表
git remote
git remote -v (含url)
branch
新增分支
git branch dev(name)
git branch 檢視分支
head轉到分支dev
git checkout dev
head回master
git checkout master
git merge dev (head在master將dev合併)
fetch
git fetch 下載遠端資料庫 但是不合併 先看看
(PR)Pull Request
git hub 未被授權的的情況下相護討論修改程式,請求對方核准合併
fork
在別人的github上fork到自己githun使用
git clone只會clone master
但是git checkout dev 會找本地端遠端clone
git branch 查詢目前分支在何處
遠端加入
git remote add orgin(name) https://url (name不重複)
抓下來看看
git fetch orgin(name) dev(branch)
git checkout dev
git merge orgin/dev
git push orgin branchname
git衝突
本地端衝突/遠端衝突
解決衝突執行
git add .
git commit
git rebase 還原
自己的分支去認別人的分支為base
rebase目的是減少commit的點
cherry-pick
git cherry-pick c2 c4(點的sha值)
還原版本
git reset HEAD^回到前一
git reset HEAD^^回到前二
git reset c3 sha 回到特定的點
git relog 查詢sha
git reset HEAD^ — hard
git reset sha1 — hard
git reset HEAD^ — soft 將還原而多的檔案不刪除 放入add.
git reset HEAD^ — hard 將還原而多的檔案刪除不保留
git reset HEAD^ 將還原而多的檔案不刪除 保留至工作目錄
git clean -f 清除功工作目錄的檔案 未加入追蹤
git reset HEAD — hard 回到自己的最新狀態 (已改爛)
排除入git的檔案及資料夾
.gitignore
folder\ (folder整個資料夾)
filename.xxx (獨立檔案)
API Key不上git
git local 結構
> master
> dev
>f/a
一個commit帶表一件事