GIT笔记(持续更新)

GIT

git是什么?
	- 分布式
	- 版本控制
	- 软件

为什么用git?
	版本上线有问题,不需要将已修改的代码删除,直接回滚即可。也可以后再返回到该版本。

个人信息配置(第一次使用)

提示:please tell me who you are

git config --global user.email "you@example.com"
git config --global user.name "your name"

基本操纵

先进入要管理的文件夹

git init之后产生.git文件夹

git status查看文件管理状态

  • 红色:新增的文件/修改了文件
  • 绿色:已经add过的文件

git add 文件名 添加文件到暂存区

git add . 添加所有文件到暂存区

git commit -m "版本描述信息" 提交到版本库

git log 查看提交日志
git log --graph 图形显示日志
git log --graph --pretty=format:"%h %s"

工作区暂存区版本库addcommitgit reset --soft 版本号git reset HEAD 文件名git reset --mix 版本号工作区暂存区版本库

回滚(版本回退)

git reset --hard commit_id

当回滚到之前版本x,该版本x之后的所有提交记录通过git log也无法查看,只能通过git reflog查看。

分支

git branch 查看目前所在的分支

git branch 分支名 创建分支

git checkout 分支名 切换到某分支

git branch -d 分支名 删除分支

业务场景(bug修复)

背景:当前Master版本v1即线上版本。现在dev分支上正在进行项目开发,此时发现bug要进行紧急修复。操作步骤如下:

  1. git checkout master 从开发分支dev上切换回master主分支。
  2. git branch bug 创建新分支用于bug修复。
  3. 进行bug修复。
  4. git checkout master 切换回master主分支
  5. git merge bug master主分支合并bug分支,可能需要手动解决冲突。
  6. git add .
  7. git commit -m "bug修复完毕"
  8. git branch -d "bug"删除bug分支
  9. git checkout dev 切换到dev分支继续开发

Github(公共仓库)/Gitlab(自建仓库)

作用:为了方便随时随地在不同机器上进行开发,将代码推送到云端。

  1. 注册账号
  2. 创建仓库
  1. 将本地代码推送到远程仓库(远程仓库会存储本地现有的所有版本和分支)
  • 假如本地没有仓库
    • echo "xxx " >> README.md
    • git init
    • git add README.md
    • git commit -m "first commit"
    • git remote add origin https://github.com/xxx/xxx.git
    • git push -u origin master
  • 假如本地已存在仓库
    • git remote add origin https://github.com/xxx/xxx.git 给远程仓库起别名叫“origin”
    • git push -u origin master 将本地代码推送至远程仓库
  1. 从远程仓库将代码拉到本地

    git clone https://github.com/xxx/xxx.git

场景(忘记推送代码)

  • 白天在公司开发,下班前add/commit生成本地版本,但是忘记推送到远程仓库。
  • 晚上回到家中想要继续开发,但是此时从远程仓库拉下来的代码是没有今天在公司开发的那一部分,但仍然可以向后进行其他功能开发。完成之后将代码推送到远程仓库。
  • 第二天回到公司,拉下最新代码,此时可能会产生冲突(昨天晚上在家开发部分和昨天白天在公司开发部分),解决冲突以后便可以正常开发推送。

rebase

作用:将多个提交记录整合成一个提交记录,使得提交日志更加简洁。

  1. git log查看提交日志
    • git rebase -i 目标版本号 当前版本到目标版本进行提交记录合并,版本号通过git log查看
    • git rebase -i HEAD~3 将最新的3条提交记录合并
  1. 合并后会提示“如何合并”

  1. 修改提交信息
  1. 重新查看提交日志

rebase还有其他功能这里不过多介绍

注意:尽量不要rebase已经push过的版本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值