千家信息网

Git原理和常用命令有哪些

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章主要介绍"Git原理和常用命令有哪些",在日常操作中,相信很多人在Git原理和常用命令有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Git原理和常用命令有
千家信息网最后更新 2025年12月03日Git原理和常用命令有哪些

这篇文章主要介绍"Git原理和常用命令有哪些",在日常操作中,相信很多人在Git原理和常用命令有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Git原理和常用命令有哪些"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、 前言

Git是什么

开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。最开始为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

从一般开发者的角度来看,git有以下功能:

1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。

2、在自己的机器上根据不同的开发目的,创建分支,修改代码。

3、在单机上自己创建的分支上提交代码。

4、在单机上合并分支。

5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。

6、生成补丁(patch),把补丁发送给主开发者。

7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。

8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。

二、Git 原理:

1. 工作区(Working Directory)

就是你在电脑里能看到的目录,开发时候所在目录或文件夹。当我们新建目录或者文件夹时的内容都放在工作区。

2. 版本库(Repository)

工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。大致结构如下:

3. 从工作区如何到暂存区:

我们把文件往Git版本库里添加的时候,是分两步执行的:

  • 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区(被版本库索引);

  • 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

  • 因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。

4. 常见的工作场景如下:

三、 常用命令

  • 远程相关:

git remote add origin git://xxx 关联远程分支,其中origin 为远程仓库的别名

git remote remove origin 解除分支关联

  • push相关操作:

git push origin <本地分支>:<远程分支>

git push -u origin master // 默认情况下这条语句等价于提交本地的master仓库到远程仓库,并作为远程的master分支

git push origin test:test // 提交本地test分支作为远程的test分支

git push origin test:master // 提交本地test分支作为远程的master分支

  • pull相关命令

git pull origin <远程分支>:<本地分支>

git pull origin next:master //将远程next分支与本地master分支合并

git pull origin next //将远程next分支与当前所在分支合并

git pull origin //当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名

  • 其他:

git checkout -b dev //创建并切换到dev分支

git merge dev //合并dev分支到当前分支

git checkout dev //切换到dev分支

git branch dev //创建dev 分支

  • 常见场景:

1. 将此次修改提交到bugfix分支后,也需要提交到dev分支。则切换到dev分支执行以下命令:

git cherry-pick commitid // 将某个分支的提交再次在当前分支提交。也可以在同一分支执行

git cherry-pick commitid1 .. commitid1 // 将某个分支的commitid1 与commitid1之间的提交再次在当前分支提交。

2. 在当前分支A修改代码到一半,又需要立马切到另一个分支B解决棘手问题,又不想先提交分支A的代码。如果强制切到B分支,则A分支的修改会被丢弃。使用stash可以将当前修改缓存起来:

git stash save "xxx" //给当前缓存内容取名"xxx",便于记录版本

注意:默认将暂存和未暂存(被索引)的文件缓存起来。

git stash list // 查看所有缓存内容

git stash pop/apply //pop将缓存栈顶弹出并应用到当前分支,apply将缓存栈顶应用到当前分支,不弹出

git stash pop/apply stash@103 //应用指定缓存内容

git stash clear // 清除所有缓存

git stash drop stash@104 //删除指定缓存,默认栈顶

四、IntelligJ idea 使用Git

五、Eclipse使用Git

https://my.oschina.net/woniuyi/blog/3103613

到此,关于"Git原理和常用命令有哪些"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

分支 开发 版本 缓存 命令 开发者 冲突 代码 文件 工作 原理 常用 之间 内容 就是 工作区 仓库 目录 存区 学习 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 硬盘服务器红灯亮怎么修 怎样获得数据库元数据 绝地求生进不了服务器 java 参数保存到数据库 邢台网络技术调试 网络安全的道德语言 服务器装完系统后键盘鼠标不识别 部队手机网络安全管理规定 雷霆加速器的服务器地址 东奥会网络安全动员部署会 南京大学毕业论文查重数据库 软件开发领域简称 北京大田物联嵌入式软件开发 阿拉德之怒服务器异常怎么回事 什么政府部门有软件开发人员 软件开发状态分类 铜川软件开发学校 常用的网络安全机制 维尔达软件开发公司 零基础学软件开发pdf 网络安全暴力攻击的原理 网上选课软件开发计划 服务器购买后没启动 服务器机箱面板开关的作用 西安华夏网络技术有限公司 关于计算机网络技术的认识和发展 吉林省网络安全大赛初赛赛题 传奇手游清除数据库 软件开发初试复试都面试什么 服务器管理源码php
0