当前位置: 首页 > article >正文

【Git从入门到精通】——Git分支介绍与GitHub相关知识总结

🎼个人主页:【Y小夜】

😎作者简介:一位双非学校的大二学生,编程爱好者,

专注于基础和实战分享,欢迎私信咨询!

🎆入门专栏:🎇【MySQL,Java基础,Rust】

🎈热门专栏:🎊【Python,Javaweb,Vue框架】

感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️

目录

🎯分支操作

😎简介

😎查看分支

😎创建分支

😎切换分支

😎合并分支

😎合并冲突问题

 🎯GitHub操作

😎创建远程库

😎 创建远程库别名

 😎将本地库推从到远程库里

😎 拉取远程库到本地库

😎克隆操作

😎邀请团队成员

😎 跨团队进行


🎯分支操作

😎简介

        Git分支是一种版本控制系统中的重要特性,它允许开发者在不影响主线(通常为master或main分支)的情况下并行进行工作。

        在版本控制中,分支是独立、平行发展的开发线。使用分支可以在不影响主线的同时,进行新功能的开发、Bug的修复等操作。Git通过指针来管理分支,一个分支实际上指向一个提交对象的引用。HEAD是一个特殊的指针,指向当前检出的分支。

        创建分支的命令是git branch (branchname);切换分支的命令则是git checkout (branchname)。合并分支通常使用git merge命令,可以将一个分支的内容合并到另一个分支中去。如果需要删除本地分支,可以使用git branch -d (branchname)命令。

        在实际工作中,合理使用分支可以极大地提高开发效率和代码管理的安全性。例如,在开发新功能时,从稳定分支创建新分支进行开发,可以避免在新功能开发过程中影响主线的稳定性。同时,在合并回主线前,应进行充分的测试以确保新功能的稳定性和兼容性。

        总的来说,掌握Git分支的管理和应用,对于团队合作开发至关重要。这不仅有助于代码的组织管理,也使得各个功能模块的开发更加灵活和可控。

😎查看分支

输入命令git branch -v 查看当前分支

😎创建分支

输入命令git branch 分支名 创建分支

再次查看分支

😎切换分支

输入命令 git checkout 分支名,发现分支已经切换

查看一下

😎合并分支

这里我将aaa分支合并到master分支上,输入命令 git merge aaa

😎合并冲突问题

        合并冲突问题是Git版本控制中常见的问题,其通常发生在两个或多个分支对同一文件的同一部分都进行了修改,当尝试将这些修改合并时,Git无法自动确定哪个修改是正确的,从而标记为冲突,需要手动解决

会报一个冲突问题

        Git通过特殊标记来表示冲突,例如"<<<<<<<"表示冲突开始,"======="表示双方的修改内容分隔线,">>>>>>>"表示冲突结束。

手动打开文件后

然后自己手动修改一下就行

接着提交暂存区,然后用git命令提交给本地库(不要带的文件名)

 🎯GitHub操作

官网:GitHub: Let’s build from here · GitHub

进入官网,点击Sign in进行登入

输入账户和密码

😎创建远程库

输入远程库的名字(最好和本地库的名字相同)

选择分类(公共库和私有库)

创建后可以看到两种协议 

😎 创建远程库别名

先用git remote -v查看是否有别名

将github中的http协议起一个别名

使用命令 git remote add 别名 协议名

查看存在的别名

 😎将本地库推从到远程库里

使用命令 git push 别名 分支名

有可能失败,因为对网络要求比较高,多试几次

绑定一下账号

推送成功了

刷新一下github ,发现已经显示了

😎 拉取远程库到本地库

修改远程库代码并保存

使用命令git pull 别名 分支名

查看文件,已经被修改

😎克隆操作

使用命令 git clone 链接名

使用 ll命令查看子文件夹

😎邀请团队成员

登入github,进入项目中,点击settings

点击Collaborators

输入账号

复制邀请函,并发送给被邀请人

😎 跨团队进行

搜一下他们项目(这里随便找了一个例子)

直接点fork

在github修改后,点击Pull request

点击new pull request

点击创建

 然后再另一个账号就可以看到,接收就行了


http://www.kler.cn/a/395383.html

相关文章:

  • Java垃圾回收算法
  • 【CICD】CICD 持续集成与持续交付在测试中的应用
  • html数据类型
  • 问:SQL优化,七条实践总结?
  • 容器技术在持续集成与持续交付中的应用
  • Python学习26天
  • Spring Boot与工程认证:计算机课程管理的新纪元
  • Spring Boot框架:电商系统的设计与实现
  • 037 RabbitMQ集群
  • 【Linux】多线程(中)
  • 电子电气架构 --- 基于以太网的电子电气架构概述
  • 大模型在蓝鲸运维体系应用——蓝鲸运维开发智能助手
  • 文心一言 VS 讯飞星火 VS chatgpt (389)-- 算法导论25.1 2题
  • 【Qt聊天室客户端】消息功能--发布程序
  • C++常用的新特性-->day06
  • 多窗口切换——selenium
  • 力扣 平衡二叉树-110
  • 【论文阅读】HITS: High-coverage LLM-based Unit Test Generation via Method Slicing
  • 【计算机视觉】FusionGAN
  • 【MySQL】数据库表连接简明解释
  • 【代码审计】常见漏洞专项审计-业务逻辑漏洞审计
  • TypeScript:现代 JavaScript 的超级集
  • rockylinux 8安装 gcc11.2
  • 用两行命令快速搭建深度学习环境(Docker/torch2.5.1+cu118/命令行美化+插件),包含完整的 Docker 安装步骤
  • 爬虫开发工具与环境搭建——环境配置
  • 火山引擎数据飞轮模式下的线上营销:内容产出更智能、人群触达更精准