日常操作
顯示所有git命令
git
查看某個git命令的幫助,例如查看commit
git commit -h
丟棄最近一次的commit
git reset —soft HEAD~1
當commit后發現與遠程庫沖突,可以使用
查看當前倉庫對應的遠程倉庫地址
git remote -v
查看當前提交狀態
git status
丟棄所有
git reset -q —hard HEAD
添加文件
git add -f — filepath1 filepath2
Commit文件
git commit -q —author “user“
Push
git push -v origin master:master
子工程的修改與提交
首先正常修改主工程和子工程。主工程與子工程要分別單獨提交。
子工程的提交
—解決合并
子工程提交后,主工程會產生一個與這個子工程相關的提交,用于將標記使用了子工程的某個sha-1快照。
Git撤銷本地修改
git reset --soft HEAD~1
<占位項1>
如何在 Git 里撤銷(幾乎)任何操作
查看歷史
git log -p -2
p 展開顯示每次提交的內容差異
2 最近提交的次數
svn文件無法刪除
發生在同時使用2個svn工具自帶鎖定功能,為了刪除使用了“release lock”,“break lock”,“get lock”,代碼庫直接操作。。。
最后有的文件可以刪了,但是最后還是有個文件刪除總是無法提交,提示"no lock token available"。
最后只能去到svn庫,刪掉“db/locks下所有目錄”,才可以提交刪除
Git更新問題
You have an old version of git for windows
NVPACK安裝后會默認將cygwin\bin射到環境變量里,設到環境變量里,于是悲劇了,這個bin下面有個git.exe,版本會灰常老,于是其他git工具會使用這個git.exe去更新git,再加上某匪的網絡過濾造成網絡環境灰常復雜,于是通過VPN更新會造成灰常怪異的問題。
解決:刪了所有cygwin\bin\git相關程序,并且安裝官方的git版本。
刪除submodule
git submodule deinit
git rm --cached
如果不是用命令刪除,會造成一些奇怪的問題
分支更新到主干
git checkout
&& git rebase
git checkout xxx
git rebase master
ref:https://stackoverflow.com/questions/8965781/update-an-outdated-branch-against-master-in-a-git-repo
查看當前所在分支
git branch
會顯示所有分支
當前分支前帶*號
<占位標題>
<占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述占位描述>
<占位項1>
<占位項2>