关于版本控制,前几年,我认为只使用 TortoiseGit 图形界面就足够了,而现在,我改变了这个看法。
Git Bash 在某些情况下要方便的多,比如“创建分支并切换到新分支”、“切换分支”、“删除分支”等。
另一个方面,TortoiseGit 图形界面只在 Windows 中才有,Linux 环境下用不了,而且在 Linux 环境下使用开源代码经常要用到 Git Bash,因此我觉定将 Git Bash 加入到我的工具箱中。
本文描述我遇到的一些基本 Git Bash 命令。
1. 克隆
克隆整个仓库
git clone <repository_url>
克隆时指定本地仓库的目录名
git clone <repository_url> <directory_name>
克隆特定分支
git clone -b <branch_name> <repository_url>
如果不知道分支名称,可以使用 git 命令来查看:
git branch
:查看本地分支,当前活动分支前面会有一个星号(*
)git branch -r
:查看远程仓库中的所有分支git branch -a
:查看本地和远程仓库中的所有分支(在bash
中,本地分支用绿色字体,远程分支用红色字体)
只克隆而不检出文件
git clone -n <repository_url>
-n
或者--no-checkout
,这次克隆将创建一个裸仓库
。可以用git checkout -b <branch_name> <tag_name>
命令将指定的 TAG 检出,新检出的分支名由branch_name
指定。
2. 分支操作
查看分支
git branch
:查看本地分支,当前活动分支前面会有一个星号(*
)git branch -r
:查看远程仓库中的所有分支git branch -a
:查看本地和远程仓库中的所有分支(在bash
中,本地分支用绿色字体,远程分支用红色字体)
创建分支
git branch <branch_name>
:创建 branch_name 分支
切换分支
git switch <branch_name>
:切换到 branch_name 分支。git switch -c <branch_name>
: 创建并切换到 branch_name 分支,c
是--create
的简写。git switch -t origin/feature-y
:检出远程分支,t
是--track
的简写,这条命令会创建一个名为feature-y
的新分支,并将其设置为跟踪远程仓库origin
中的feature-y
分支。然后立即切换到新创建的feature-y
分支。
删除分支
git branch -d <branch_name>
:删除 branch_name 分支
3. 标签
查看标签(Tag)
git tag
切换到标签
git checkout <tag-name>
基于指定的标签创建并切换到一个新的分支
git checkout -b <branch_name> <tag_name>
:基于标签 tag_name 创建一个新的分支 branch_name,然后切换到这个新建的分支上。