Git分支篇git branch和git checkout

这篇具有很好参考价值的文章主要介绍了Git分支篇git branch和git checkout。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

分支作用

在开发过程中,项目往往由多人协同开发,那么将多人编写的代码汇总到一起就成了一个困难且复杂的工作,另外项目也需要备份和版本迭代,因此不能只有一个版本。因此分支就成为了优秀的解决方案。

分支相互独立,不同部门在不同分支开发,分支由主分支构建,分支代码独立运行且无误后融合到主分支,保证主分支都是稳定可部署的代码。分支的存在极大的提高了开发效率。

分支一般分为主分支和其他分支,不同程序员在分支上编写代码,无误后融合到主分支(一般为master分支)是各个程序员的代码都融合到主分支上。

分支也可以进行版本迭代,开发的第一版融合到master1主分支上,作为第一版,二次开发时融合到master2上作为第二个版本,代码也不会丢失。

Git分支管理

初始化仓库
分支依赖于仓库,因此分支需要在git仓库构建。git命令支持使用git init初始化一个空的git仓库。

git init

Git分支篇git branch和git checkout,# Git,git,github

git branch

git branch命令是分支管理命令, 有如下功能:

  • 查看分支
  • 创建分支
  • 删除分支
  • 重命名分支
  • 设置上游分支
  • 将分支推送到远程仓库
# 查看本地分支
git branch

默认只列出本地分支,不显示远程分支,并且在当前分支前面使用 * 标记

Git分支篇git branch和git checkout,# Git,git,github

刚初始化的仓库是没有分支的,如果复制项目到当前目录,并绑定远程仓库,最后执行git push origin master命令就会自动在本地和远程仓库生成master分支。(推荐)

当然也可以直接在本地创建分支,git提供了git branch [branchName]来兴建一个分支。

Git分支篇git branch和git checkout,# Git,git,github
出现上面错误的原因是"库是空的,无法创建主分支",需要添加内容并提交到工作区,也就是执行如下命令:

git add .

git commit -m "xxx"

执行命令后git仓库就有内容了,并且git系统自动以此内容创建一个master主分支

Git分支篇git branch和git checkout,# Git,git,github

# 查看远程分支
git branch -r

git branch --remotes

Git分支篇git branch和git checkout,# Git,git,github

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

git branch --all

Git分支篇git branch和git checkout,# Git,git,github

# 查看分支提交的详细信息
git branch -v

git branch --verbose

Git分支篇git branch和git checkout,# Git,git,github

在查看远程仓库的分支时注意绑定远程分支仓库。

# 创建本地分支
git branch help

Git分支篇git branch和git checkout,# Git,git,github

#git checkout -b 创建并切换到新的分支
git checkout -b <branch>
# 切换到指定分支
git checkout <branch>

Git分支篇git branch和git checkout,# Git,git,github

git checkout -b <branch>=git branch <branch>+git checkout <branch>

# 将本地分支推送到远程仓库(创建远程仓库分支)
git push origin <local_branch>:<remote_branch>

# 简写
git push -u origin <local_branch>
# 删除一个名字为branchName的分支,如果该分支有提交未进行合并,则会删除失败。
git branch -d <branchName>

# 强制删除一个名字为branchName 的分支
git branch -D <branchName>


# 删除远程分支
git push origin -d <branch>

git push origin :<branch>
# 重命名当前分支
git branch -m <branch>

# 重命名指定分支
git branch -m <old-branch> <new-branch>

git checkout

git checkout切换分支和创建分支的命令。git checkout命令可以切换通过git branch命令创建的分支。每个分支都是一个独立的项目空间。

checkout一个分支,会更新当前的工作空间中的文件,使其与检出分支的commit版本状况保持一致。这之后工作区中的所有变更都会被记录在checkout出来的那个分支上。这一操作可以认为是在挑选你希望修改的工作分支。

git checkout命令有时候会跟git clone命令相混淆。两个命令中最为显著的差别在于,git clone用于从远程仓库获取代码,而git checkout则用来在本地系统中业已存在的代码库中切换不同的版本。

# 切换本地分支
git checkout <branch>

# 切换远程分支
git checkout -t <origin/xxx>

Git分支篇git branch和git checkout,# Git,git,github

在不同分支下改变目录下的文件,提交到工作区的内容时不一样的。也就是说当切换分支后,就是一个独立的空间,这个空间工作区的内容由git addgit commit决定,最后git push推送该分支的代码。

分支项目拉取

在git管理的项目中提供了两种方法拉取远程项目git clonegit pull两个命令。在分支中git clonegit pull是不一样的,前者是面向公开项目的,g后者就是用户本地和远程仓库传输的。

git clone是作用于主分支,将主分支克隆到本地,这个过程无需密码验证,任何开发者都可以将远程仓库的主分支地址拉取到本地(只作用于主分支)。

git pull可以在任意分支上从远程的任何分支拉取项目,此过程需要密码验证。在管理本地分支项目与远程分支项目时都是使用该命令。

远程分支也是可以直接拉取到本地的,通过git fetch命令。文章来源地址https://www.toymoban.com/news/detail-734785.html

# 在本地新建一个xiaoxu分支,并将远程origin仓库的master分支代码下载到本地xiaoxu分支
git fetch origin master:xiaoxu
# 取回origin主机的master分支
git fetch origin master
# 将某个远程主机的更新,全部取回本地
git fetch <远程主机名>
# 取回特定分支的更新
git fetch <远程主机名> <分支名>

到了这里,关于Git分支篇git branch和git checkout的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微命令】git 如何修改某个分支的名字(git branch -m newbranch)

    简要信息,快速记录 假设作为git设计者,要用来修改branch的命令,那么就是 git branch作为前缀,然后进一步修改的命令是branch相关的对象处理,应该就有 增删查改,帮助等,但一定都是在branch这个域下面,这样容易记住比如: git branch --help

    2024年04月26日
    浏览(38)
  • Github 下载指定文件夹(git sparse-checkout)

    比如要下载这里的 data_utils 1、新建空文件夹,并进入新建的空文件夹。 2、 git init 初始化 3、 git remote add origin 添加远程仓库 4、 git config core.sparsecheckout true 允许稀疏检出 5、 git sparse-checkout set 设置需要拉取的文件夹(可以同时拉取多个,中间加空格即可) 6、 git pull origin

    2024年02月09日
    浏览(40)
  • git 新建分支 推送到远程 首次pull代码报错 git branch --set-upstream-to=origin/<branch>

    在本地创建新分支后,上传到远程仓库,首次pull 的时候,会提示: 当前分支与远程分支并未建立联系,需要执行一下 git branch --set-upstream-to=origin/ 操作 解决办法: git branch --set-upstream-to=origin/远程分支名 建立完联系之后,就可以进行 git pull、git push 等操作啦~

    2024年02月16日
    浏览(52)
  • 【Git】push分支报错:fatal: The current branch 当前分支名 has no upstream branch

    示例代码: feature/file 是分支名 中文释义: 在于当前这个分支没有和任何的仓库发生关联,origin是仓库的一个指针,需要将当前的分支与这个指针之间形成关联。 直接允许以下命令即可 执行之后会在 github 上自动新建一个 feature/file 的分支。

    2024年02月11日
    浏览(58)
  • 问题:git branch -a 看不到所有的远程分支

    问题:通过git branch -a 查看分支时,看不到所有的远程分支(我这里缺少master 远程分支) 解决:通过 git fetch 将本地远程分支保持一致 再次 git branch -a,就可以看到所有的分支

    2024年02月12日
    浏览(46)
  • git操作--->在远程删除了某个分支,但本地使用git branch -r的时候还是会显示某个分支存在是什么原因

    💕又迷糊了哈哈,以为自己命令执行错了,结果可能是缓存的原因:💕 😂如果你发现使用 git branch -r 命令显示了一个远程没有的分支,这可能是由以下几个原因造成的:😂 缓存的远程分支信息: 当你克隆一个仓库或者与远程仓库交互时,Git 会在本地保存远程分支的缓存信

    2024年02月19日
    浏览(54)
  • Git删除分支不成功,提示:error: Cannot delete branch......的问题解决

    一 问题来源       本地的代码仓库里面,有很多分支,随着项目的不断迭代,这样的分支变得越来越多。于是想把这样的分支给删掉,在删除分支的时候,报错: error: Cannot delete branch \\\'\\\' checked out at \\\'/Users/GoProject/src/code ,对应的提示如下: 二 解决问题       首先需要说

    2024年02月12日
    浏览(54)
  • git 删除分支 The branch ‘xx‘ is not fully merged.If sure you want to delete it, run ‘git branch -D xx‘

    删除本地分支时,报了这个错:  error: The branch \\\'xxx\\\' is not fully merged. If you are sure you want to delete it, run \\\'git branch -D xxx\\\'. 如果本地分支没有合并到其他分支,或者没有对应的远程分支,删除时则会提示这个错误。 强制删除即可。 之所以会需要这样提示,是因为通常创建分支就是

    2024年02月05日
    浏览(60)
  • Git 分支跟踪There is no tracking information for the current branch.

    当你执行在develop分支上 git pull 返回提示: 解决办法,即按照提示: 查看本地分支的远端跟踪分支 要查看本地分支跟踪的远端分支,可以使用 git branch 命令搭配不同的选项。以下是一些常用的命令及其说明: 查看所有本地分支及对应的远端跟踪分支: 使用 -vv 选项可以显示

    2024年02月21日
    浏览(45)
  • IDEA GIt切换分支报错:Your local changes to the following files would be overwritten by Checkout.

    一、前言 在我们本地有未commit的文件时,使用IDEA切换分支的时候会报如图所示错误: 意思就是对当前分支文件的更改会被Checkout覆盖。可以搁置更改然后签出和取消搁置。 二、解决办法 方案1、将文件commit 方案二、stash方式 三、Git命令 Terminal输入命令如下 推荐使用第二种方

    2024年02月02日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包