# Git相關指令 ### ■ git 環境教學 **個人資料設定** >git config --global user.name "Your Name" git config --global user.email "Your Email" **查看是否設定成功,按Q即可離開** >git config --list **初始化一個新的存儲庫** >git init **把該資料檔案全部加入要同步的檔案** >git add . 或 git add --all **提交一個新版本** >git commit -m "<填寫版本資訊>" ### ■ git 基礎操作 `git commit` 將暫存區的內容提交到儲存庫保留 `git status` 查詢目前目錄的狀態 `git log` 檢視提交的歷史記錄(要退出檢視狀態直接按鍵盤上的<font color="#e83e8c">Q鍵</font>即可離開) `git branch` 建立新的分支 `git checkout` 在創建的分支之間進行切換 `git checkout -b <branch>` 可以同時建立分支和切換 `git merge` 將另一個分支的變更合併回來 `git rebase` 重新定義分支的參考基準 `git clone` 直接將整份專案從遠端下載到本地端 `git fetch` 將檔案從遠端抓取下來 `git pull` 將遠端修改的內容再合併到本地數據庫( pull = fetch + merge ) `git push` 主要就是把本地儲存庫的資料推向遠端所使用 `git reset --soft HEAD~` 這個模式下的 reset,工作目錄跟暫存區的檔案都不會被丟掉,就只有 HEAD 的移動而已。也因此,Commit 拆出來的檔案會直接放在暫存區。 `git reset --hard HEAD~` 在這個模式下,不管是工作目錄以及暫存區的檔案都會丟掉。 `git stash` 暫時儲存現狀的操作 `git stash pop` 可復原暫時儲存到最新的操作 `git reset --hard origin/branch` 放棄目前所有檔案與 commit,還原成遠端版本(適用自己分支) <font color="#e83e8c">`HEAD`</font> 就是你目前指向的版本狀態,而 HEAD 可以選擇它指向到 - 分支 (branch) - commit 版本 ### git 檔案追蹤機制  *** ### ■ git專案步驟 1. git clone (下載遠端儲存庫檔案至本地端) 2. git checkout design -> git branch des1 (看HEAD在哪,指向去design分支,建立自己的分支) 3. git checkout design -> git pull (在進行專案調整前,確保有其他人改動,請先抓取) 4. git checkout des1 -> git merge design (把你的分支拉到跟design分支相同位置) 5. git stash (如果是多人合作情況下,在修改專案時,有人又更新design分支檔案,需先存留檔案) 6. 再重覆第3-4的步驟 7. git stash pop (解開存留的檔案) 8. git checkout des1 -> git add . (切換在自己分支再把檔案加入索引) 9. git commit -m "時間戳-單號/標題<備註說明>" (提交修改版本) 10. git checkout design -> git merge des1 --no-ff (把兩個分支合併, --no-ff是no FastForward,可以做出宗翰想看的小耳朵形狀線圖) 11. <font color="#c7254e">**git push (把你整合des1的design分支推到gitlab,不要忘記了,每次都忘記推XD)**</font> 12. git checkout des1 -> git merge design (把你的des1分支拉到跟design分支相同位置,就功德圓滿了) ### ■ git退版保留原修改檔案 1. git checkout des1 -> git reset <commit編號> --soft (先在des1分支進行退版) 2. git checkout design -> git reset <commit編號> --soft (切換到design也進行退版) 3. git checkout des1 -> git add . -> git commit -m "時間戳-單號/標題<備註說明>" (若有新增或再調整,再進行此動作) 4. git checkout design -> git merge des1 --no-ff (把兩個分支合併, --no-ff是no FastForward,可以做出宗翰想看的小耳朵形狀線圖) 5. git push -f (強制design遠端分支更新) 6. git checkout des1 -> git merge design (把你的des1分支拉到跟design分支相同位置) 7. git push -f origin des1 (強制des1和遠端分支更新一樣) *** ### ■ vscode ==ctrl+`== 打開終端機 ==mkdir <fileName>== 建立目錄 ==code -r <fileName>== 用於創建新文件或打開現有文件
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up