Git與Github的基本指令

之前學python的時候,了解到git是非常重要的基礎,學會git可以讓編程工作變得更加順暢和大大的提高了團隊協作。在此通過學習基本的指令後,再讀幾遍系統文檔,應該會對今後的工作大有幫助。

感謝先進們的奉獻,在此放上連結方便學習。
《Git 與 Github 版本控制基本指令》
《30天精通Git版本控管》
《Git官方網站》
《Git-it 台灣》手把手入門
《Git 中文手冊》
《Git 超親和力猴子教學》

基礎入門

安裝Git(此處略過,可查看文獻1)
設定帳戶名稱和郵箱

最好和github上的一致,方便管理

git config --global user.name "<your name>"
git config --global user.email "<your@mail.com>"
#查看帳戶名和郵箱
git config user.name
git config user.email
#更改帳戶名和郵箱
git config --global user.name "your name"
git config --global user.email "your email"
建立一個本地的repository

如果沒有權限,經常需要輸入sudo,可以在該文件夾輸入 sudo -s以授權
repository(檔案庫)可以簡單看成一個資料文件夾。

mkdir hello-git
cd hello-git
git init
ls -la
檢查狀態,新增或修改 commits

此處建立一個hello.py的文件

#在項目文件夾查看工作環境狀態
git status
#新增追蹤(這樣修改檔案後就會追蹤到)
git add hello.py
#檢查下狀態,比較下差異,若無問題則commit到respository上
git status
git diff
#提交並備註修改信息
git commit -m "寫上具體修改了什麼,方便協作"
#執行上一步後,就提交完成了,可以查看下狀態
git status

若反悔不想把檔案(文件)加到追蹤,則可以按照以下處理

#檔案尚未加入追蹤使用(未add)
git rm --cached hello.py

#檔案已經在repository內,則使用以下指令
git reset HARD
修改後非常重要的細節

當追蹤的文件修改後,例如修改了hello.py的內容,需要再次add 修改的文件(細節)
若是喲啊放棄修改,可以使用git checkout – 文件名稱.
確定修改後,可以執行以下指令:

git diff
git status
# -a 是add ,-m 是message的簡寫
git commit -a -m "修改了hello.py“

注册Github账号

註冊后就可以通过 git config –global user.username <github账户名> 绑定即可,
註冊步驟可以參考文獻1.

註冊完後可以創建一個線上的文件夾(檔案庫)repository! 通常github線上和本機的文件夾名稱保持一致會容易管理.

本機與Github遠程連結

在github新建一個repository後,會得到一個https的連結,複製此連結,然後執行指令:

#cd 到對應的檔案庫(文件夾)
git remote add origin <remote 網址>
#幫一個remote設定地址
git remote set-url <remote 網址>
#查看有哪些remote連結
git remote -V

#檢查後,把本地檔案push到遠程github
git status
git push -u origin master

參數 -u 等於 –set-upstream,設定upstream可以使分支開始追蹤遠程分支,只需要做一次該指令,並push成功後,今後就會自動追蹤,只需要透過git push即可

Fork 和 clone一個open source(開源)計畫

git clone 了文件後,進入建立一個屬於自己的分支(branch)

cd react
#切出自己的新分支
git checkout -b tomatokai@feature_branch
#修改下README.md,然後commit到自己fork的專案
git commit -a -m "更新了README"
git push origin origin tomatokai@feature_branch

建立一個feature branch

#建立一個名為dev的branch(需要cd到文件夾)
git checkout -b dev
#修改hello.py的內容後提交
git commit -a -m "Init dev branch"
git push origin dev

邀請別人合作

在github中——setting——collaborators中設置邀請

利用push和pull來和Github.com同步

#通過git pull保持本地和遠程代碼同步
git pull origin dev

merge(合併)和刪除branches

#移動到 master branch
git checout master
#合併dev到master
git merge dev
#刪除dev branch
git branch -d dev
#將合併後的master推送到遠端
git push origin master