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

Git 使用教程

一、介绍与安装

Git 就像是一个超级智能的项目历史记录管理员,专门负责管理你写的代码、设计的文档或者其他类型的文件。想象一下,你在写一篇很长的小说,随着时间推移,你不断地修改内容、添加情节、删除段落。如果没有一个好的管理方式,你可能会忘记之前的版本是什么样的,或者在修改过程中不小心弄丢了重要的内容。Git 就能帮你解决这些问题。

它会记录下你对文件所做的每一次修改,就像给每次修改拍了一张快照。你可以随时回到过去的某个版本,看看当时的文件内容是什么样的。而且,当你和其他人一起合作完成一个项目时,Git 可以帮助你们协调各自的修改,避免冲突,确保每个人的工作都能顺利整合到一起;这里对git就有了一个初步认识。

1、功能应用场景

应用场景,大致可以分为个人本地化应用、以及线上管理单人/多人合作的场景;

1.1个人本地化

当你从事某项任务编辑文档,或者代码任务时,随着工作的开展,你需要对整体的把控,或者,解决完问题,需要复盘,或者用来记录你某个解决问题修改。此处就需要本地的版本管理。

1.2线上单人/多人管理合作

线上单人管理:比如你在多个电脑直接进行同一个任务代码,文档编辑,需要同步,或者某个本地项目需要远程更新到另一台联网PC上。

线上的多人协作:在一个大型软件项目中,通常会有多个开发人员同时负责不同的模块。每个开发人员可以在自己的本地分支上进行开发,完成后需要同步各自进展,并且集中发布。

2、常见线上仓库网站以及线上仓库创建

常见线上仓库:github、gitlab、gitee、gitcode、等(后两个为国内的,相交前两个访问较为稳定)

这里用gitee举例:

2.1、注册账号(忽略)

2.2、创建线上仓库

默认推荐使用http协议,只需要验证账号密码,即可。

3、软件安装本地部署

软件下载地址:Git - Downloadshttps://git-scm.com/downloads

下载完成后无脑next,一路安装过去,若需要指定安装路径,则指定一下,若不需要则跳过。

安装成功后,鼠标右键空白位置会出现如下菜单:Git GUI Here / Git Bash Here

二、命令介绍

根据前一段的介绍,远端仓库已经建立完毕,下面介绍一些常见命令这里,使用git时只需要鼠标右键菜单,点击“Git Bash Here”, 即可出现如下控制台界面:

根据设置执行下列配置,这里根据自己“useName” “userEmail”进行修改配置

git config --global user.name "useName"
git config --global user.email "userEmail.com"

然后创建本地仓库目录:

此时发现实际目录创建完毕:

1、git 基础命令

1.1、init/clone/fork

init :为初始化本地仓库:创建成功!

clone:将远端仓库克隆到本地,这里可以参考另外一篇文章:git克隆远端仓库代码_ssh克隆gitlab远程仓库代码-CSDN博客

fork:可以代表分叉、克隆 出一个(仓库的)新拷贝;

1.2、add/commit

add: 添加文件到本地仓库;

commit:创建本地提交记录;

本地对于已经加入到仓库种的文件修改后,可以合并成一个语句提交 “git commit -a -m "描述提交内容"

1.3、checkout

 chekout: Git 中用于切换分支、恢复文件和创建新分支的工具。例如下切换并创建分支 创建新分支“study”,并切换到新分支

1.4、status

status:查看当前本地分支状态;例如下:会发现本地修改了。

1.5、branch

branch: 查看分支、新建分支但不切换、删除分支等操作

1.6、remote add

remote add:将本地仓库与远程仓库绑定;

1.7、pull/push

pull:拉去远端仓库到本地;

push:将本地仓库同步到远端;

代码提交流程:add ->commit->pull->push

1.8、merge/rebase

merge: 将目标分支,合并到当前分支;

rebase:用于重新应用一个分支上的提交到另一个分支,将两个分支节点集结成一条分支脉络;它是 git merge 命令的替代方案,但与合并相比,它提供了一个更干净的项目历史。Rebase 通过在特定的基础提交上重新应用更改,使得提交历史成为一条直线,这使得理解和审查历史更加容易。

在多人合作时,merge/rebase,都会存在冲突异常,这里就不详细举例了,当出现冲突时,要解决对比,当前分支,与你要即将合并分支的差异,决定哪些是要保留,修改确定好了,再次进行本地提交,从而完成冲突解决。

1.9、log\diff\reflog

log:查看提交日志:

diff:查看当前仓库分支种修改了什么;

reflog:它用于记录本地仓库中 HEAD 指针的移动历史,这包括了 commit, rebase, merge 等操作。这个命令对于恢复错误的操作至关重要,因为它允许开发者查看并回退到之前的任何一个提交状态,即使这些状态在 git log 中已经不可见。

1.10、reset

reset:当前分支的版本回退,可以指定到某次具体提交;(注意:不要轻易版本回退

2、.gitignore文件

该文件需要加入到版本控制中;

忽略文件,文件夹等

如下:

这里忽略了后缀为obj的文件


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

相关文章:

  • 【C语言】求2024的质因数和
  • 【星云 Orbit • STM32F4】08. 用判断数据头来接收据的串口通用程序框架
  • 国产编辑器EverEdit - 了解“自动完成”相关设置
  • MacBook Pro使用FFmpeg捕获摄像头与麦克风推流音视频
  • android bp构建编译C++代码
  • Spring 集成 MyBatis 操作指南(详细实例)
  • BUG日志:使用热点或免费加速器时git链接github出现端口22拒绝访问的解决方法
  • 一周一个Unity小游戏2D反弹球游戏 - 球反弹的方向
  • 强化学习策略梯度算法实现文档(CartPole-v1)
  • barcodelib:一个功能强大且易于使用的 C# 条形码生成库
  • 2025全开源Java多语言跨境电商外贸商城/Tk/FB内嵌商城I商家入驻I批量下单I完美运行
  • 【QT网络问题】关于QT在调用天气等类似api接口时报错
  • 差旅费控平台作用、功能、11款主流产品优劣势对比
  • Docker 数据卷管理及优化
  • 【网络安全 | 渗透测试】GraphQL精讲二:发现API漏洞
  • CAN总线通信协议学习4——数据链路层之仲裁规则
  • 【大模型原理与技术】1.2基于学习的语言模型
  • Yocto + 树莓派摄像头驱动完整指南
  • 如何为Java面试准备项目经验
  • 【告别双日期面板!一招实现el-date-picker智能联动日期选择】