一.命令列
(1)拉遠端分支
git checkout -b 本地分支名x origin/遠端分支名x
例子:git checkout -b branch1 origin/remote
(2)在原有**裡面拉遠端分支
git fetch origin 遠端分支名x:本地分支名x
例子:cd code
git fetch origin remote
(3)已經提交的git**管理裡刪除不想提交的目錄或檔案
git rm -r - -cached 刪除目錄
例子:已經提交.build臨時檔案的資料夾,後來在專案裡.gitignore忽略.build,提交還會出現.build的檔案修改
git rm -r - -cached .build
(4)修改最後一次commit的資訊
git commit --amend 然後使用vi修改儲存即可
(5)git tag檢視版本後使用git checkout 切換tag
例子:git tag 列出版本
git checkout 3.2.12
(6)clone指定遠端分支
git clone -b 分支 倉庫
例子:git clone -b dev_jk http://***x
(7)git生成補丁命令:
當前分支所有超前master的提交:
git format-patch -m master
某次提交以後的所有patch:
git format-patch 4e16 --4e16指的是commit名
從根到指定提交的所有patch:
git format-patch --root 4e16
某兩次提交之間的所有patch:
git format-patch 365a…4e16 --365a和4e16分別對應兩次提交的名稱
某次提交(含)之前的幾次提交:
git format-patch –n 07fe --n指patch數,07fe對應提交的名稱
故,單次提交即為:
git format-patch -1 07fe
正如你所見,如果衝突發生,git只是輸出上述資訊,然後就停下來。乙個小衝突會導致整個patch都不會被整合。
處理這種問題的最簡單方法是先使用 git am --abort,然後手動的新增此patch, patch -p1 < patch,手動解決掉**衝突,最後使用 git commit -a 提交**。但是這樣做有個問題就是你會失去patch中原本包含的commit資訊(比如from,date,subject,signed-off-by等)。應該有一種更聰明的方法。
二.配置檔案
filemode = false 不過濾檔案許可權
用的比較少的sql示例
1.find in set str,strlist 函式作用為 strlist中是否包含str group concat distinct a 將多行的a列上的引數拼接成一行用逗號隔開的串 連表查詢時關聯欄位中有乙個表的字段值為用逗號拼接的字串可以用以下sql查詢出來,其中 on 後面的 find ...
一些比較少用但比較有用的linux命令備忘
ssh fcnr 10000 localhost 22 userb b.b.b.b b.b.b.b是乙個外網機器b的ip ssh p 10000 usera localhost 在機器b,ssh到機器a 取消 設定git 注意設定的前提是以及在系統中設定好了 i2cdetect l 列出系統中有的i...
Git 檔案比較
一 add後和版本庫中的內容比較 git 學習筆記知識點排列如下,需要請戳,目前有待進一步完善 1 git 刪除檔案後找回方式總結 2 git 檔案比較 3 git分支管理 以下是個人的git學習筆記,參考並學習了尚矽谷的免費的 git 教程,個人認為講的非常詳細,來自嗶站大學,鏈結如下 尚矽谷gi...