需求:有時候新建專案或者新建專案的依賴庫的時候,沒有在.gitignore中新增要忽略的檔案和資料夾,而你又已經把這些檔案或者資料夾提交到了遠端倉庫,但是後面團隊協作開發的需要你忽略相關的檔案和資料夾。
場景:git刪除遠端分支已push的檔案或者資料夾(android studio切換到dev分支:切換到你需要操作的分支)
一、預覽暫存區我們需要刪除的檔案或資料夾(此步驟可以預覽我們要刪除的檔案或資料夾是否是我們要刪除的,有沒有或多或少刪除)
git rm -r -n --cached 檔案/資料夾
示例:git rm -r -n --cached android-skin-loader-lib/proguard-rules.pro
終端顯示:
假如這個檔案和資料夾在遠端分支不存在,終端顯示:
使用 -n 引數,執行命令時,是不會刪除任何檔案,而是展示此命令要刪除的檔案列表預覽。由此我們看到只有要刪除的檔案
git rm -r 引數為遞迴刪除,主要是在刪除資料夾時可以遞迴刪除資料夾下面的檔案或資料夾
二、確認無誤後刪除暫存區檔案或資料夾,只需去掉 -n 引數
git rm -r --cached 檔案/資料夾:git rm -r -n --cached android-skin-loader-lib/proguard-rules.pro
三、將本次刪除暫存區的改動提交
git commit -m '***'
四、將本次刪除push到遠端倉庫
git push
補充:另外:當我們需要刪除暫存區
或分支
上的檔案, 同時工作區也不需要這個檔案了, 可以使用如下命令:
git rm file_path
git commit -m 'delete somefile'
git push
這樣本地檔案也會除 git刪除已push記錄
當提交 記錄時,我們可能碰到這些情況 1.commit注釋寫錯 2.解封版時,只允許有一條commit記錄,但 寫錯了還push到遠端了 3.沒拉最新 提交後合併 時有衝突 遇到這三種情況時,我們都希望把之前提交記錄給刪除,再重新提交一條新記錄。應該怎麼做呢,開始展示 1.先用 git log 查出...
Git 遠端分支的pull與push
git branch r 檢視遠端分支 git branch a 檢視所有分支,本地和遠端 git remote show remote name 檢視遠端倉庫資訊其中git remote show remote name 展示的資訊包括 git checkout b local origin da...
git 恢復已刪除的本地和遠端分支
在多人協作專案開發中,一般的會在每次新開發特性拉取分支。完成後合併到主幹,然後刪除合併過的分支。但是,當誤刪除了分支怎麼辦呢?下面就一步步恢復被誤刪除的分支 git reflog show date iso上面命令會顯示出所有的提交記錄。找到你需要恢復的對應的 commit。記住對應的 commit...