下面列舉一些git使用的小技巧,陸續會完善補充html
git中可使用merge合併分支內容,特殊狀況下,咱們可能須要將一個分支的部分文件合併到主分支,例如,某個分支的部分功能須要上線,而另外一部分功能開發到一半,這時候,咱們只須要提交須要上線的代碼。固然你能夠手動 copy 代碼,但git能作到的咱們就不要copy代碼啦。git中可使用checkout從某個分支中檢出相應文件
使用方法git checkout [branch] -- [file name]
node
git能夠忽略那些特定的文件和文件夾,這些文件就不會被添加到git倉庫了。只須要建立一個名爲 .gitignore 而後列出那些你不但願 Git 跟蹤的文件和文件夾。你還能夠添加例外,經過使用感嘆號(!)。git
.svn node_modules bower_components .idea .npm-debug.log !main.pyc
本地其實有不少早就被刪除的遠程分支,能夠用 git remote prune origin
所有清除掉,這樣再 checkout 別的分支時就清晰多了npm
git checkout -b feature origin/feature
api
不知道是什麼緣由,本地代碼更改以後git pull拉取遠端代碼獲取不到最新的,可是顯示Already up-to-dateapp
這個時候能夠嘗試 git status,來顯示工做目錄和暫存區的狀態,再拉取代碼編輯器
git status git pull git checkout 分支名
也能夠把HEAD指向最新下載的版本ide
git reset --hard origin/分支名如master
svn
強制覆蓋本地代碼fetch
git fetch --all && git reset --hard origin/master && git pull
在當前項目中,早先建立並已經push到遠程的文件及文件夾,將名稱大小寫更改後,git沒法檢測出更改。git config core.ignorecase false
,關閉git忽略大小寫配置,便可檢測到大小寫名稱更改
這樣可能會產成兩個文件,一個大寫文件一個小寫文件
當代碼掛了的時候,使用git blame命令能夠找出罪魁禍首。這個命令能夠將文件中的每一行的做者、最新的變動提交和提交時間展現出來。git blame [file_name]
git log
git log -n 1
git log -n 1 --stat
git log -n 1 -p
Git- Git
TortoiseGit - TortoiseGit
SourceTree - SourceTree
編輯器的Git管理插件也很好用