差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

兩邊的前次修訂版 前次修改
下次修改
前次修改
tech:git_cli [2025/06/26 18:13] – 希望將 master 分支備份至 gemini, 然後將 develop 分支完全取代 master 分支的作法 jonathantech:git_cli [2025/08/19 09:05] (目前版本) – [FAQ] 4. 誤將某個目錄納入 git 管理, 之後加入 .gitignore 的作法 jonathan
行 2: 行 2:
  
 ===== FAQ ===== ===== FAQ =====
 +=== 0. 基本設定 ===
 +  - 設定將帳號與 Token 存寫到 store 上<cli>
 +git config --global credential.helper store
 +</cli>
 +    * 這會把帳密(或 Token)以明文的方式儲存在 ~/.git-credentials 中。請注意:這是明文儲存,不加密,僅適用於安全的開發環境。
 +  - 設定 commit 的基本資訊<cli>
 +git config --global user.name "你的名字"
 +git config --global user.email "[email protected]"
 +</cli> 
 +    * 這會寫入到 ~/.gitconfig 中。
 +
 === 1. 讓本地端同步刪除遠端已不存在的分支 === === 1. 讓本地端同步刪除遠端已不存在的分支 ===
   - 透過 git branch -a 可以看到有 remotes/origin/分支 Exp. <cli>   - 透過 git branch -a 可以看到有 remotes/origin/分支 Exp. <cli>
行 31: 行 42:
   - 基於 develop 創建新的 master 分支<cli>git checkout -b master</cli>   - 基於 develop 創建新的 master 分支<cli>git checkout -b master</cli>
   - 強制推送新的 master 到遠端(會完全覆蓋原有的 master)<cli>git push origin master --force</cli>   - 強制推送新的 master 到遠端(會完全覆蓋原有的 master)<cli>git push origin master --force</cli>
 +
 +=== 4. 誤將某個目錄納入 git 管理, 之後加入 .gitignore 的作法 ===
 +  * 以 .bmad-core 這目錄為例<cli>
 +git ls-files | grep .bmad-core
 +git rm -r --cached .bmad-core/
 +git commit -m "Remove .bmad-core/ from tracking"
 +git rm -r --cached .
 +git add .
 +git commit -m "Update .gitignore"
 +git status
 +</cli>
  
 {{tag>git cli}} {{tag>git cli}}
  
  • tech/git_cli.1750932809.txt.gz
  • 上一次變更: 2025/06/26 18:13
  • jonathan