---
# System prepended metadata

title: '操作 head : 不斷頭，又可隨處貼 branch，有解嗎？'
tags: [' head', git]

---

---
tags: git, head
---
操作 head : 不斷頭，又可隨處貼 branch，有解嗎？
===
## 不用斷頭也能黏貼 branch 
### git branch new_branch_name head~3
- git branch main head~3
- 依 head 為起點，往後算 3 個 commit，黏貼 main (branch_name)
- 往後算幾個 commit，有點麻煩。拿 commit_number 直接在 commit 上，黏貼 branch_name，豈不美哉！
### git branch branch_name commit_number
- git branch init cc79
    - 白話：在 commit_numbe：cc79 黏貼 branch_name：init
    - ==只要有 commit-number，要貼幾個 branch，就貼幾個 branch==

### 移動 branch，除了 commit -m "..."，讓舊有branch 移動，其他方法：
- 土炮：
    - 將 branch 刪除，在要黏貼 branch 的 commit 上，再新增一個 branch。**先刪除 branch，再黏貼 branch**，不然會爆出 名稱重複的警告。
```shell
A branch named 'dogg' already exists.
```
- 快速：
    - git branch -f branch_name commit_number
    - git branch -f dogg abb4f
    - 快速移動舊分支 moves (by force)

    
---
### git branch -d branch_name ，一次只能刪一個 branch_name。怎麼一次刪除多個 branch_name?
- git branch -d "branch_name1" "branch_name2" "branch_name3" ... "branch_nameN"
![](https://i.imgur.com/p2om0Xa.jpg)

---
#### branch 便宜的像貼紙，想貼那就貼那，想刪除就刪除