# Git常見指令[較精簡版] | 指令 | 執行結果 | | ---------------------- | ------------------------------------ | | clear | 清除所有指令 | | git init | 初始化 | | git add . | 暫存所有有異動的變更 | | git log | 用來看曾經commit的紀錄 | | git status | 查看git目前的狀態 | | git config --help | 忘記指令時可以查詢help | | git config --list | 查詢現在git裡面有哪些東西(清單) | | git commit -m "備註" | 提交檔案(後面可備註自己改了什麼) | | git branch | 查詢分支(目前) | | git log | 看提交結果(查看提交結果) | | git branch 新分支名稱 | 增加分支 | | git merge release | 合併 | | git push 節點 分支 -f | 強制上傳覆蓋檔案 | | git reset HEAD^ commit | 後悔重設可以輸入此指令(僅限最近次數) | | git reflog | 可看到過去曾經做的修改 | | git branch -d branch name| 刪除分支輸入git branch -d 後面接分支name| | git checkout 分支名稱 | 切換到指定的分支 | # 詳細描述: **Git基本概念** Git的版本控制只能追踨純文字檔的變更,其它類型文件當然也可以加入 Git資料夾/程式庫,只是 Git沒辦法正確處理他們的版本狀態。 **本地(locale)與遠端(remote)** Git的出發點就是要讓大家都能不必連線就在自已的電腦(本地)工作,完成後再推送到伺服器上(遠端),所以本地與遠端的概念是很重要的,第一篇文章只介紹 Git最基本的使用方式,為了不要太混亂,所以只說明本地程式庫的工作方法,之後再慢慢介紹如何與遠端程式庫連接。 **開始用 Git工作** 開始工作需要有一個程式庫,這個程式庫可以是全新的程式庫,可以是已經有檔案的資料夾,也可以是自已或別人建立,已經有 Git管理的程式庫,可以在本地端操作也可以遠端操作,以下就說明如何在本地新建程式庫: **本地端創建程式庫** 找到一個你想要儲存程式庫的資料夾,找到這個資料夾路徑,然後初始化 (initialize) Git: git init "資料夾路徑" cd "資料夾路徑" 上面資料夾路徑如果不存在的話, Git會自動新建一個。 Git會在指定資料夾裡自動創建一個隱藏資料夾 .git,所以通常你看不到有任何動靜;無論如何現在您就可以在這個程式庫裡開始工作。順道一提,這個新的程式庫不一定要是空的資料夾,也可以是原來就有資料的資料夾,寫一半的專案、報告,個人網站備份……等。只要是你想用 Git管理的資料夾,就 git init "資料夾路徑"就對了。 **基礎本地端操作** 有程式庫之後就可以開始工作了,寫程式、寫文章、修改報告……,工作完成之後,使用 Git管理最基本的幾個指令: **加入(add)** 加入會讓 Git開始追踨資程式庫裡新增的文件,加入也等於通知 Git某些檔案的有變化,所以除了新建立的文件要加入,檔案每次修改過之後也都要執行,不然在之後推送的時候就不會被送出,檔案加入追踨的指令如下: git add "檔案名稱" #加入特定檔案 git add * #加入所有新增或已修改檔案 檔案會被加入 Git的索引(index)裡,並且被放入暫存區(staging aera),等待被提交。 **提交(commit)** commit可以被列為承諾,有保證的意思,但在這裡git語言會把承諾這意思列為"提交"出去的意思 提交被加入(add)暫存區的檔案,指令如下: git commit **移除(rm)** 如果想要讓 Git不再追踨某一個檔案,可以使用移除指令,要注意的是,如果只是單純執行git rm "檔案名稱"那這個檔案不只不會再被 Git追踨,同時會從程式庫裡被刪除,效果就像 Linux命令列的 rm指令一樣,如果只是想把檔案從 Git的索引裡移除,可以執行git rm --cached "檔案名稱",這樣檔案還是會留在資料夾內,但是就不會再被 Git追踨了。 # 三個關係容易混淆[釐清楚概念] **擷取(fetch)、合併(merge)與擷取合併(pull)** 1.擷取(fetch) 單純從遠端擷取本地端所沒有的資料,它會建立一個遠端程式庫的參照(reference)分支,但是並不會把資料合併(merge)到本地端的程式庫裡。 命令如下: git fetch origin master 2.合併(merge) 將擷取至本地端的資料併入本地程式庫分支,命令如下: 遇到衝突(conflict)時需要手動修改。 git merge master 3.擷取合併(pull) 我自已是覺得如果直譯”拉取”或是”抓取”都不太明確,英文原文為了簡短使用 pull一個單字,其實它所執行的就是 fetch and merge,所以直接翻作擷取合併明確一些。 使用方法如下: git pull origin master
×
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