Git笔记简化版

起源

Git是目前世界上最先进的分布式版本控制系统。林纳斯-托瓦兹在开发linux系统时有很多人想有一个平台进行版本控制。当时同类型的版本控制软件是BitKeeper,bitKeep是不开源的。当林纳斯团队无法免费使用它时, 林纳斯花费了一个月左右时间就开发出了Git。

功能

  1. 版本记录:对问题进行历史追查
  2. 协同开发:允许多个人或团队在同一个项目上协调工作,解决协调协作中的冲突。
  3. 代码备份:多个位置存储代码的版本
  4. 版本还原
  5. 文档和注释

早期svn缺点

  1. 版本需要自行备份
  2. 不适合程序员在开发过程中做小版本的管理
  3. 没有分支功能,无法实现开发和维护两条线独立维护
  4. 不适合管理分布在世界各地,互不认识的大型开发团队

Git的优点

  1. 本地有版本信息,容灾能力强,远程平台连不上也没关系
  2. 分支和合并
  3. 平台支持,允许不同团队之间提交需求和进行交流协作

Git操作

  1. git init 建立本地仓库,一个项目一个仓库
  2. 用户配置:用户名和邮箱
    • git config user.name "zhangsan"
    • git config user.email "zhangsan@163.com",工作时使用企业邮箱
  3. 配置全局签名邮箱,全局需要存放在C:\Users\主机名.gitconfig
  4. git status 查看状态,列出所有没有提交的文件信息
  5. git add 提交代码到暂存区,建议不要提交目录,制定清楚文件名
  6. git rm --cached 文件路径+文件名, 从暂存区中删除
  7. git commit 将暂存区代码提交到本地仓库,进入注释vim,可以使用-m"注释"不进入vim
  8. git log 查看版本库, 如果显式不全,使用空格翻页,q退出
    • git log --pretty=oneline 一页显式所有版本
  9. git reset --hard HEAD^ 还原到上一个版本
    • git reset --hard HEAD~2 向前移动两个版本
    • git reset --hard 特定的7位版本号,跳转到指定的版本中
  10. git reflog 查看本地的操作日志,第一列是版本号的前7位
  11. git checkout --文件名 :如果对文件进行修改后,想还原为最后一次提交的版本。

分支管理

  1. git branch -v: 查看当前有哪些分支
  2. git branch dev: 命名一个新的分支,dev是分支名称
  3. git checkout dev : 切换到新的分支
  4. git merge dev: 站在某个功能少的分支(master)去拉取功能多的分支
  5. git branch -d 分支名称: 删除分支
  6. 分支冲突:查看冲突文件,按照逻辑手动修改合并,删除冲突标记,重新提交冲突文件
    • vim 冲突文件
    • 手动修改冲突
    • git commit -m"解决冲突"

gitee远程平台使用

  1. git remote add origin 远程IP
  2. git push origin master, 向origin推送master分支
    • permission deny
      • pull request: 向外部团队申请修改代码
      • 管理员给组内成员添加开发权限
  3. git clone IP 从远程平台下载git仓库,下载全量
  4. git pull 更新增量代码
相关推荐
阿火~24 分钟前
Git 项目配置与推送完整指南
git
xian_wwq2 小时前
【学习笔记】-深度认知系列-第1讲-AI不是魔法——三句话讲清楚人工智能到底是什么
笔记·学习·深度认知
M78佐菲2 小时前
c语言学习笔记:排序与查找方法整理
linux·c语言·笔记·学习·算法
j7~3 小时前
【Git】《Git 系列指南(二):Git基本操作与 reset 三种模式》
运维·git·git安装·git基本操作·git配置·创建git仓库·git reset三种模式
多加点辣也没关系3 小时前
Git - 的安装与使用
大数据·git
帅次3 小时前
Git 常用命令汇总
git·软件工程·开发工具·版本控制·git教程·代码管理·git命令
摇滚侠3 小时前
《SpringBoot 3:入门与应用实战》第 5 章 使用 Spring Boot 阅读笔记 9
java·spring boot·笔记
陈皮波比茶3 小时前
git学习
git·学习
浪兎兎4 小时前
Docker 容器技术笔记
笔记·docker·容器
LuminousCPP4 小时前
数据结构‑二叉树(二):二叉堆从零实现|Heap结构设计 + 建堆优化 + 堆排序深度解析
c语言·数据结构·笔记·二叉树