自己用git的筆記(自看防止忘記)

一般情況下使用的

創(chuàng)建一個(gè)本地沒有的分支并且拉取該分支的遠(yuǎn)程分支數(shù)據(jù)
git checkout -b 分支名字 origin/遠(yuǎn)程分支的名字
查看日志信息
git log 分支名字
強(qiáng)制回滾某次提交記錄那
git reset --hard 提交記錄的標(biāo)示
強(qiáng)制提交
git push -f origin 分支名字
重置暫存區(qū)與工作區(qū),與上一次commit保持一致
git reset --hard

經(jīng)常使用的

獲取遠(yuǎn)程分支信息
git fetch 
查看所有的分支
git branch -a
查看遠(yuǎn)程分支
git branch -r
查看本地的分支
git branch 
創(chuàng)建一個(gè)本地的分支
git checkout -b 分支名字
刪除本地的分支
git branch -D 分支名字
刪除遠(yuǎn)程的分支
git push origin -d 分支名字
從當(dāng)前分支切換到另一個(gè)分支
git checkout 分支名字
拉取遠(yuǎn)程分支的信息
git pull origin 分支名字
克隆遠(yuǎn)程倉庫的信息
git clone 遠(yuǎn)程分支倉庫的鏈接
常看當(dāng)前分支的狀態(tài)
git status 
查看某一個(gè)文件的修改變化
git diff 文件的路徑
列出所有的tag
git tag
在本地代碼庫給項(xiàng)目打上一個(gè)標(biāo)簽
git tag -a tag名字 -m '描述信息'
新建一個(gè)tag在本次的commit
git tag 名字(比如:v1.0.0)
新建一個(gè)tag在指定的commit
git tag 名字(比如:v1.0.0) commit的標(biāo)識(shí)
刪除本地的tag
git tag -d tag名字
將本地建的tag傳到遠(yuǎn)程
git push origin tag名字
將本地的所有分支的tag提交到遠(yuǎn)程去(所有的tags)
git push origin --tags
將本地的所有分支的tag提交到遠(yuǎn)程去(單個(gè)tag)
git push origin tag名字
從當(dāng)前的tag切換到另外一個(gè)tag
git checkout tag名字
刪除遠(yuǎn)程的tag
git push origin :refs/tags/ tag名字
刪除遠(yuǎn)程的tag(這個(gè)也可以)
git tag origin :tag名字
顯示遠(yuǎn)程的tag
git ls-remote --tags origin
顯示一個(gè)tag的信息
git show tag名字
將某一個(gè)分支合并當(dāng)前的本地分支
git merge 別的分支名字
git合并兩個(gè)遠(yuǎn)程分支
需要將兩個(gè)分支拉到本地 ,然后在本地合并,解決完沖突在提交

一些其他的命令,并且有的命令沒有驗(yàn)證過

mac電腦上顯示隱藏文件夾( 驗(yàn)證過)
defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder
mac電腦上隱藏隱藏文件夾( 驗(yàn)證過)
defaults write com.apple.finder AppleShowAllFiles No && killall Finder
刪除 untracked files(未驗(yàn)證)
git clean -f
連 untracked 的目錄也一起刪掉(未驗(yàn)證)
git clean -fd
連 gitignore 的untrack 文件/目錄也一起刪掉 (慎用,一般這個(gè)是用來刪掉編譯出來的 .o之類的文件用的)(未驗(yàn)證)
git clean -xfd
在用上述 git clean 前,墻裂建議加上 -n 參數(shù)來先看看會(huì)刪掉哪些文件,防止重要文件被誤刪(未驗(yàn)證)
git clean -nxfd
git clean -nf
git clean -nfd

一些偏門的東西

自己的一個(gè)本地庫添加到遠(yuǎn)端
git remote add origin 遠(yuǎn)程倉庫的地址
發(fā)現(xiàn)自己的pod 怎么都不好使了 可以嘗試進(jìn)行這樣的操作
rm -rf Podfile.lock
rm -rf Pods
pod install
open 你的工程.xcworkspace
如果發(fā)現(xiàn)自己發(fā)布的庫成功了,但是pod search 搜索不到
可以在前往 -》個(gè)人 -》資源庫 -》Caches -》CocoaPods -》 search_index.json
刪除他 然后在重新pod search (他將進(jìn)行重新安裝,前提要能顯示隱藏文件夾)
cocoapods 在哪里
可以在前往 -》個(gè)人 -》cocoapods(前提要能顯示隱藏文件夾)
podspec是一個(gè)倉庫的描述文件,他的具體說明待整理

遠(yuǎn)程倉庫的關(guān)聯(lián)與取消
連接遠(yuǎn)程倉庫
git remote add origin 倉庫地址
查看遠(yuǎn)程連接
git remote -v
git取消與遠(yuǎn)程倉庫的連接
git remote remove origin
如果gitignore明明文件路徑是對(duì)的 但是確實(shí)不起作用
使用這個(gè)命令,然后重新提交gitignore,即可以起作用了。
git rm -r --cached .
如果自己的本地分支沒有任何的修改,但是執(zhí)行rebase之后發(fā)生沖突,可以這樣解決(沒敢驗(yàn)證)
先執(zhí)行這個(gè)命令 
git rebase --onto 目標(biāo)分支(比如develop) 標(biāo)識(shí)(比如某個(gè)節(jié)點(diǎn)的提交記錄)
然后
git pull --rebase origin 目標(biāo)分支(比如develop)

原文:https://stackoverflow.com/questions/40524681/why-git-rebase-shows-conflicts-in-the-files-i-did-not-modify

特別說明一下這個(gè)命令的含義
pod update --no-repo-update
這條命令表示只根據(jù)本地目錄更新庫,不需要拉取遠(yuǎn)程
如果發(fā)現(xiàn)執(zhí)行 git pull 之后還是還是提示說自己沒有拉取,那么執(zhí)行這個(gè)命令
git pull origin 分支  --allow-unrelated-histories
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容