一張速查表看懂Git命令,搞定版本控制照做就ok丨新手福利
新手必備版本控制備忘錄
作者 Adam Snyder
郭一璞 編譯
量子位 出品 | 公眾號 QbitAI
Git,版本控制必備手段,無論你負責的是哪一塊,只要需要寫代碼,就必須熟悉Git。
當然,用的越熟練,處理合作項目越順利,離出任CTO、迎娶白富美、走上人生巔峰就不遠了
現在,就從這份Adam Snyder在Medium BetterProgramming專欄貢獻的Git速查表開始吧~
git init
這是新項目要做的第一件事,在項目中創建一個.git存儲庫。存儲庫(repo)是你對一個項目按照時間順序做得所有修改的集合,記錄了所有更改歷史。
git config —global user.name “Your Name”
git config —global user.email “yourEmail@mail.com”
這是用來設置你提交的時候用的信息,只需要在你第一次安裝Git之后設置一次就行了。
git add filename.extension
把filename.extension替換成任何你想增添的文件,比如index.html。這可以把你制定的問價放進暫存區(staging area)或index中,你可以把暫存區想成是一個用來做相關設置,準備放進存儲庫的地方。
git add .
這個命令可以幫你把項目文件夾下的所有文件都放進暫存區,不用一個一個挪。
git add *.html
這個命令可以幫你把項目文件夾下的所有.html文件都放進暫存區,當然你可以換成其他任何擴展名,就把該擴展名的所有文件都放進暫存區。
git status
顯示所有你已經放進暫存區的的文件,以及進行了修改需要放進暫存區的文件。
git reset filename.extension
從暫存區中刪除指定文件。
git rm —cached filename.extension
從暫存區中刪除該文件,并將其設置為未跟蹤。
git commit -m “Description of the commit”
從暫存區獲取文件,并將他們提交到本地存儲庫。引號里寫的部分是你的修改內容,注意寫的簡單清晰一點,比如“修復了用戶名未更新的bug”,不要寫“一些更新”這種模模糊糊的概述。
touch .gitignore
創建一個名叫.gitignore的文件,你可以用文本編輯器打開這個文件,寫下存儲庫里需要忽略的文件名或者文件夾名,運行的時候這些被忽略的文件不會顯示。
所以,如果你不想提交某個文件,就用這個命令吧。
git branch branchName
創建一個分支(branch),就是你前一個分支代碼庫的直接副本。
git checkout “branchName”
檢查你創建的分支,并在這個分支內工作。你可以再次對你的代碼進行任何更改,弄完之后再提交代碼然后把這個分支push到GitHub上。如果除了問題或者你不再需要這個功能了,那就可以直接刪掉分支。
git merge branchName
在master里,你可以用這個命令從你正在用的分支里提交,然后把它們和主存儲庫merge到一起。
git remote add origin https://github.com/userName/project.git
添加遠程存儲庫的位置。在這一步之前,你的操作都是在本地完成的,需要登上你的GitHub賬號創建一個遠程存儲庫,然后把本地存儲庫的文件放上去。創建遠程存儲庫后,會生成一個鏈接,可以放在上面的命令里。
git remote
和你的項目關聯的遠程存儲庫列表。
git push -u origin master
將本地存儲庫推送到遠程存儲庫,第一次執行此命令時,直接這樣寫就好了 。
git push
在你執行完初始推送后把代碼放到GitHub上。
git clone https://github.com/userName/project.git
把項目clone到你的本地計算機。
git pull
如果你和別人用一樣的代碼庫,這個命令可以讓你從遠程存儲庫提取最新版本,更新你的本地版本,這樣你就能在同伴工作的基礎上繼續寫代碼了。
傳送門
Adam Snyder的原文:
https://medium.com/better-programming/basic-git-github-cheat-sheet-fa020831cb35
- MEET2020 | 百度景鯤:AI交互正在吃掉舊產品邊界,觸達移動互聯網盲區用戶2019-12-10
- MEET2020 | 王硯峰揭秘搜狗AI技術體系:自然交互在左,知識計算在右,核心是語言2019-12-16
- MEET2020 | 曠視唐文斌:你到底給誰創造了什么樣的價值?這是AI產品的靈魂拷問2019-12-17
- MEET2020 | 快手劉霽:AI基礎能力決定每個公司AI的迭代和落地效率2019-12-20




