git branch 查看本地所有分支

PS F:\LiveTalking> git branch
* main

git branch -a 查看所有分支 包括本地和远程分支

PS F:\LiveTalking> git branch -a
* main
  remotes/origin/HEAD -> origin/main
  remotes/origin/ernerf-rtmp
  remotes/origin/main

远程分支:是本地仓库里的一个书签或指针 。这个指针的唯一作用是记录上一次你和远程仓库通信时,远程分支(比如origin/main)所处的位置 命名规则就是<remote-name>/<branch_name> 最常见的远程名字是origin 

例如:origin/main:指向远程仓库(origin)上 main 分支的“指针”。

唯一的更新方式是git fetch 和git pull

为什么会说唯一的更新方式是git fetch 和 git pull吗?这两个是获得远程分支的更新情况的 我看deepseek说了一个例子 git branch -a说的意思是根据我们最后一次和总部同步消息 总部有以下这些分支 此时并没有主动去咨询总部 在没有同步消息的这段时间内 是否有更新  而git fetch 就是去咨询总部 请求最新的情况 

git branch <branch name>在本地新建一个分支

PS F:\LiveTalking> git branch liujiangli-branch
PS F:\LiveTalking> git branch
  liujiangli-branch
* main

团队协作的时候很重要 每个人都在Main分支上 是很危险的 注意在创建新的分支之前 确定main是最新的 这样的话你同事的对于main的修改 不会导致后期你的代码差异过大

git branch -d <branch-name> 删除一个本地分支 (安全删除 会检查是否已经合并)

PS F:\LiveTalking> git branch -d liujiangli-branch
Deleted branch liujiangli-branch (was b750ae9).
PS F:\LiveTalking> git branch
* main

(我在我的本地爱怎么修改就怎么修改 但是我会将我觉得好的修改必要的Git add 然后再git commit只有经过commit的部分 才会到远程仓库 不然的话就还是在我的本地)

上面那个删除指令 因为我这分支啥操作也没做 我们来试试做操作之后是啥情况

PS F:\LiveTalking> git checkout liujiangli-branch
A       1.py
M       app.py
M       baseasr.py
M       basereal.py
M       lipasr.py
M       lipreal.py
M       llm.py
A       llm1.py
A       ttsreal1.py
M       wav2lip/genavatar.py
M       wav2lip/models/wav2lip.py
M       webrtc.py
Already on 'liujiangli-branch'

我新建了一个liujiangli-branch分支 然后使用checkout切换到这个分支上 可以看到这个分支上存在的内容 这些是没有git add  和commit的 简单看看就行 

git branch -d <branch-name> 删除一个本地分支 (安全删除,会检查是否已合并)删除这个分支不能在此分支上 要切换到其他分支 而且切换的时候如果在这个新分支上进行的修改没commit 不会让你切换 这些自己都实验一下就行

git branch -D <branch-name> 强制删除一个本地分支 即使没有被合并(合并到目标分支)

git checkout <branch-name> 切换到分支

git checkout -b <branch-name> 创建并切换到分支

git switch <branch-name> 切换到分支

git switch -c<branch-name>创建并切换到分支

git merge是针对于分支的合并

git merge <branch-name>指定分支合并到当前分支

写着写着不想写了 差不多了 之后工作的肯定才会应用更多 先这样 

喜欢这个帖子 欢迎点赞

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐