Git使用指南

为什么要做版本控制:要保留之前所有的版本,以便回滚与修改

想要让git对一个目录进行版本控制需要以下步骤:

1. 进入要管理的文件夹

2. 执行初始化命令:git init

3. 管理目录下的文件状态

  • 三种状态的变化:用git status查看状态时,工作区修改后以及新增的文件会变成红色,提交到暂存区后会变成绿色。暂存区的文件不需要提交到版本库的话,可以回滾回来。
  • 红色:新增的文件/修改了的原老文件 -》git add 文件名
  • 绿色:git已经管理起来的文件 -》 git commit -m 描述信息
  • 生成版本

4. 个人信息配置:用户名、邮箱(一次即可)

5. 将修改后的文件提交到暂存区:git add 文件名

6. 生成版本:git commit -m 描述信息,提交到本地的版本库,push后才是推送到远端的库

7. 查看版本信息:git log

git remote add origin 对于远程分支名的理解

  • 给远程库取别名:git remote add origin 远程仓库地址
  • remote可以看做是一个人的电脑,假设有十个人合作,那么就有10个remote对象。为了方便大家同步,我们创建一个叫做origin的remote,大家都和这个origin同步,那么大家就可以达成一致了。
  • git clone xxx就是把位于xxx的一个remote拷贝到本地,这个remote我们叫做origin。git remote # 查看有哪些remote,一般就一个,叫做origin
  • git remote remove origin:删除,一般不用到
  • git remote add origin xxx :新增,一般不用到。xxx 请用最开始的 git clone xxx 中的 xxx 替代
  • git clone xxx 命令,可以看做是一个复合命令,它做了两件事:第一,下载文件,第二,执行 git remote add origin xxx
  • 向远程推送代码:git push -u origin 分支;简单说,就是本地分支与远程的分支无任何联系,git push无法推上去,用-u(--up-stream)来建立本地分支与远程某个分支的关联,形成一个管道,之后 git push可以直接沿着管道到达关联的分支,而直接使用不带别的参数的git pull从之前push到的分支来pull,无需再加-u参数了。相当于第一次串门的时候你登了个记办了个vip。以后再来就知道是你来了,不用再搜身了。

  • 从远程仓库克隆代码:git clone 远程仓库地址
  • 切换分支:git checkout 分支名;git checkout -b 分支名:创建并切换到分支

回滚(git reset):

1. 回滚至之前版本

  • git log查询版本号
  • git reset --hard 版本号

2. 回滚至之后版本

  • git reflog查询版本号
  • git reset --hard 版本号

输入git reset --hard 版本号,回滾到上一个版本,再用git log打印时,会丢失回滾前的最后一个版本信息;git relog打印出来的信息还包含回滾前的最后一个版本。

合并分支(本地):在master分支上,输入git merge bug,就将bug分支合并到了master上。

git branch -d bug:删掉bug分支

分支冲突:可以找到冲突的文件,手动修复文件冲突

git rebase:合并提交记录

撤销对工作区文件的修改:git checkout -- <file>

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

提交到暂存区:git add <file>

从暂存区回退到已修改的状态:git reset HEAD <file>

其他命令:

  • git reflog用来记录输入过的每一次命令

版本回退/前进:git reset --hard commit_id

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

git reflog用来记录输入过的每一次命令要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

回退到上一版本:git reset --hard HEAD^。(用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^)

储藏工作区内容:git stash

查看储藏的工作区内容:git stash list

恢复工作区内容,从储藏区恢复到工作区:

  • 1. 用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除
  • 2. 用git stash pop,恢复的同时把stash内容也删了

查看远程库的信息:git remote

  • cherry pick的作用:把指定的commit,提交到一个新的分支上。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值