git介绍,安装(手把手),命令与使用(包含IDEA操作,github,gitee的万字图文详述)(二)

简介: git介绍,安装(手把手),命令与使用(包含IDEA操作,github,gitee的万字图文详述)

3.5 提交本地库

3.5.1 将暂存区的文件提交到本地库

基本语法 git commit -m "日志信息" 文件名

3.5.2 查看状态(没有文件需要提交)

3.5.3 查看信息(版本号等)

3.6 修改文件

3.6.1 修改文件 + 查看状态(检测到工作区有文件被修改)

3.6.2 添加到暂存区 + 查看状态(工作区的修改添加到了暂存区)

3.6.3 提交到本地库 + 查看版本信息

3.7 历史版本

3.7.1 查看历史版本

基本语法:

  • git reflog 查看版本信息
  • git log 查看版本详细信息

3.7.2 版本穿梭

基本语法:git reset --hard 版本号

通过 git reflog 查看当前指向的版本号 也可以在 D:\Git-Space\git-demo.git\refs\heads 目录下打开master文件,里面保存的信息是当前master指向的版本号

3.7.3 Git 切换版本原理

底层其实是移动的 HEAD 指针

4.Git 分支操作

4.1 什么是分支

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。 使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。 对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)

4.2 分支的好处

  • 同时并行推进多个功能开发,提高开发效率。
  • 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

4.3 分支的操作

命令名称 作用
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支合并到当前分支上

4.3.1 查看分支

基本语法:git branch -v

4.3.2 创建分支

基本语法:git branch 分支名

4.3.3 切换分支

基本语法:git checkout 分支名

4.3.4 修改分支

4.3.5 合并分支

基本语法:git merge 被合并的分支名

4.3.6 产生冲突

冲突产生的表现:后面状态为 MERGING

冲突产生的原因:

  • 合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。 Git 无法替我们决定使用哪一个。必须人为决定新代码内容。
  • 查看状态(检测到有文件有两处修改:both modified)

4.3.7 解决冲突

  1. 编辑有冲突的文件,删除特殊符号,决定要使用的内容。 文件形式:
    <<<<<<< HEAD 当前分支的代码 === == = 合并过来的代码 hot-fix
  2. 添加到暂存区
  3. 执行提交(注意:此时使用 git commit 命令时不能带文件名

4.3.8 创建分支和切换分支分析

  • master、hot-fix 其实都是指向具体版本记录的指针。 当前所在的分支,其实是由 HEAD决定的。所以创建分支的本质就是多创建一个指针。
  • HEAD 如果指向 master,那么我们现在就在 master 分支上。 HEAD 如果执行 hotfix,那么我们现在就在 hotfix 分支上。
  • 所以切换分支的本质就是改变 HEAD 指针 指向

5.Git 团队协作机制

5.1 团队内协作

举个例子: 岳不群首先用 git 初始化自己的本地库,写了一套华山剑法,利用push 命令将自己的本地库推送到代码托管中心(Github、Gitee), 大弟子令狐冲通过 clone 克隆命令完整的复制到自己的本地库, 令狐冲修改两招之后,必须确定自己的身份,是华山派岳不群的弟子, 才能将自己的本地库再次 push 到代码托管中心, 这样岳不群就可以通过 pull 命令拉取令狐冲修改的代码 来更新自己的本地库。


5.2 跨团队协作

岳不群这个团队觉得这套华山剑法还是太low了,于是令狐冲请日月神教的东方不败团队帮忙修改。 东方不败团队就将岳不群远程库中的华山剑法 fork 到自己的远程库,clone and push。 修改完毕,就发个请求 Pull request 给岳不群,告诉岳不群团队已经将 华山剑法 修改成了 辟邪剑法, 岳不群收到请求,就审核这套辟邪剑法,觉得写的很不错,就merge合并过来。 这样,岳不群团队的所有人都可以pull拉取下来修炼升级后的辟邪剑法版的华山剑法。


6.GitHub 操作

  • GitHub 网址:https://github.com/
  • 全球最大同性交友网站,技术宅男的天堂,新世界的大门。

6.1 创建远程仓库

6.2 远程仓库操作

命令名称 作用
git remote -v 查看当前所有远程地址别名
git remote add 别名 远程地址 起别名
git push 别名 分支 推送本地分支上的内容到远程仓库
git clone 远程地址 将远程仓库的内容克隆到本地
git pull 远程库地址别名 远程分支名 将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并

6.2.1 创建远程仓库别名

基本语法:

  • git remote -v 查看当前所有远程地址别名
  • git remote add 别名 远程地址

6.2.2 推送本地分支到远程仓库

基本语法:git push 别名 分支

6.2.3 克隆远程仓库到本地

基本语法:git clone 远程地址

注意:如果创建的是public库(开源),则任何人都有对该远程库的读权限,因此clone是不需要登录的

6.2.4 拉取远程仓库到本地

基本语法:git pull 别名 分支

6.2.5 邀请加入团队

  1. 选择邀请合作者

  2. 填入想要合作的人

  3. 复 制 地 址 并 通 过 微 信 钉 钉 等 方 式 发 送 给 这个想要合作的人

  4. 合作的这个人在自己github账号中的地址栏复制收到邀请的链接,点击接受邀请。

6.3 跨团队合作

  1. 将远程仓库的地址复制发给邀请跨团队协作的人,比如东方不败

  2. 在东方不败的 GitHub 账号里的地址栏复制收到的链接,然后点击 Fork 将项目叉到自己的本地仓库。

  3. 东方不败就可以在线编辑叉取过来的文件,编辑完毕后,填写描述信息并点击左下角绿色按钮提交。

  4. 接下来点击上方的 Pull 请求,并创建一个新的请求

  5. 回到岳岳 GitHub 账号可以看到有一个 Pull request 请求。

  6. 如果代码没有问题,可以点击 Merge pull reque 合并代码。

6.4 SSH 免密登录

我们可以看到远程仓库中还有一个 SSH 的地址,因此我们也可以使用 SSH 进行访问。

  1. 在自己的C盘的用户目录下打开git bush,输入指令ssh-keygen -t rsa -C Mr-Write@aliyun.com,即可创建.ssh文件

  2. 复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys


  3. 复制ssh链接

  4. 拉取远程仓库到本地

  5. 推送本地分支到远程仓库


相关文章
|
2月前
|
存储 安全 开发工具
Git安装与配置:操作步骤+Gitee绑定
本文系统介绍了Git从安装配置到远程协作的全流程,涵盖基础概念、常用命令、分支管理、冲突解决及Gitee实战操作,助你高效掌握代码版本控制与团队协作技巧。
340 8
|
2月前
|
Shell Linux 网络安全
宝塔服务器面板部署安装git通过第三方应用安装收费怎么办—bash: git: command not found解决方案-优雅草卓伊凡
宝塔服务器面板部署安装git通过第三方应用安装收费怎么办—bash: git: command not found解决方案-优雅草卓伊凡
430 3
宝塔服务器面板部署安装git通过第三方应用安装收费怎么办—bash: git: command not found解决方案-优雅草卓伊凡
|
10月前
|
存储 Shell 开发工具
Git和TortoiseGit的安装与使用
Git和TortoiseGit的结合使用,可以大大提高版本控制的效率和便捷性。通过本文的步骤,您可以轻松安装和配置Git及TortoiseGit,并掌握基本的版本控制操作。
1917 82
|
11月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
699 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
8月前
|
人工智能 API 开发工具
GitHub官方开源MCP服务!GitHub MCP Server:无缝集成GitHub API,实现Git流程完全自动化
GitHub MCP Server是基于Model Context Protocol的服务器工具,提供与GitHub API的无缝集成,支持自动化处理问题、Pull Request和仓库管理等功能。
1576 2
GitHub官方开源MCP服务!GitHub MCP Server:无缝集成GitHub API,实现Git流程完全自动化
|
8月前
|
Linux 开发工具 git
版本控制工具:Git的安装和基本命令使用指南。
结束这段探险,掌握了Git你就等于掌握了一个宝藏,随时可以瞥见你的编程历程,轻松面对日后的挑战。Git,无疑是编程者的强大武器,开始你的Git探险之旅吧!
303 28
|
6月前
|
安全 Shell 开发工具
Windows下使用git配置gitee远程仓库
就在前几天因为一些原因,我的电脑重装了系统,然后再重新配置git的环境的时候就遇到了一些小问题。所以我决定自己写一篇文章,以便以后再配置git时,避免一些错误操作,而导致全网搜方法,找对的文章去找对应的解决方法。下面为了演示方便就拿gitee来演示,不拿GitHub了写文章了。
286 0
|
8月前
|
文字识别 网络协议 开发工具
GitHub封锁?推荐5个国产的Git仓库替代平台
近日,GitHub对中国区IP的部分限制引发了广泛关注。未登录用户被拒,已登录用户功能受限,南北网络环境差异更显“内卷”。为应对这一挑战,本文推荐了多个国产Git平台:Gitee(码云)、GitCode(CSDN旗下)、CODING(腾讯系)、CodeUP(阿里云支持)及微信代码管理工具。这些平台功能全面、稳定性强,是开发者迁移项目的理想选择。通过同步代码、配置CI/CD流水线等简单步骤,可确保项目平稳过渡。此次事件提醒我们,掌握核心技能与支持国产平台同样重要!
5447 11
|
8月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
344 10
|
10月前
|
人工智能 IDE 编译器
idea如何使用AI编程提升效率-在IntelliJ IDEA 中安装 GitHub Copilot 插件的步骤-卓伊凡
idea如何使用AI编程提升效率-在IntelliJ IDEA 中安装 GitHub Copilot 插件的步骤-卓伊凡
2000 15
idea如何使用AI编程提升效率-在IntelliJ IDEA 中安装 GitHub Copilot 插件的步骤-卓伊凡