git的简单使用与版本控制

git的正常使用

  • 查看状态

git status 查看文件状态

  • 添加/恢复

git add 添加到暂存区:将工作区的“新建/修改”添加到暂存区

git rm --cached 恢复,不放到暂存区,上一步的撤销

  • 提交到本地库

将暂存区的内容提交到本地库

git commit -m '提交说明信息'
补充: 网站上的提交时间是依据我们执行完commit后的时间。

若只是单分支,这些就可以正常使用,可在实际工作中,每个人都有一条分支,我们要去查看整个团队中是否有人已上传了自己的代码

  • 更新本地分支代码

git fetch(推荐使用)/git pull

这时会出现提示内容,我们应该先去查看两个分支的更该是否有冲突的地方,有就得先处理冲突。然后只需要输入:q就可以退出。

  • 将本地代码合并到远程分支

git merge origin/(远程分支名) 因为此时本地分支中的代码已经合并了别人的代码,说明本地代码是最新的,但远程分支不是最新的,所以需要让本地分支跟远程分支合并一下。

同样也会出现提示内容,:q就能退出

  • 提交到远程仓库

git push

版本

  • 查看版本历史记录

git log 显示最详细的日志信息: 如果内容太长,需要控制屏幕 空格键: 向下查看b:向上查看q:退出查看

git log --oneline 简约的格式显示

  • 前进后退版本

git reflog 显示回滚版本步数,HEAD@{回滚对应版本,底层操作需要移动几步}

基于索引值操作[推荐方式]

git reset --hard <局部索引值> 使用一个^(异或) 表示后退一步,n个^表示后退n步

git reset --hard HEAD~n 使用~符号:只能后退;n指定步数,表示后退n步

git add . 和 git add *

  1. git add .
    会把本地所有untrack的文件都加入暂存区,并且会根据.gitignore做过滤

  2. git add *
    会忽略.gitignore,把任何文件都加入

为什么推荐使用get fetch的原因

git pull 和 git fetch 区别

git pull(少用)

  1. 提交 / 拉取
    git pull 会把所有的提交自动合并到当前分支当中,没有复查的过程
    git pull = git fetch + git merge
    可能会产生冲突,需要手动解决
  2. 远端跟踪分支不同
    无法直接对远程跟踪分支操作,必须先切回本地分支然后创建一个新的commit提交
  3. commitID不同
    更新代码时,本地的库中master的commitID发生改变,变成了2
    (commmitID 提交时,生成的唯一标识)

git fetch

  1. 提交 / 拉取
    git fetch 只是把拉去的提交存储到本地仓库中,没有合并过程,需要使用merge合并
  2. 远端跟踪分支不同
    能直接更改远端跟踪分支
  3. commitID不同
    更新代码时,本地的库中master的commitID不变,还是等于1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@乐知者@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值