Git使用(工作流程、使用配置、命令操作、分支branch、临时缓存stash)

        Git是一个可以供我们使用的软件,首先要对Git进行下载安装;在工作中,经常会出现一些情况(例如:某个功能开发错误,需要退回某个时候的编辑版本来重新开始开发,那这个时候可能会想到将之前的文件在开发前进行备份,而当文件过大时,单纯的对文件进行备份,就要占用一定的空间内存;鉴于此,使用Git,它可以保存文件的编辑记录[第n行增加了‘hello word’,第m行删除了‘hi’],当我们需要返回原来的编辑状态时,可以执行相关的命令,Git会根据它保存的文件修改记录来进行‘编辑退回’,也就返回了原来的编辑状态)

1、工作流程

工作目录(项目目录)下需要存在git仓库-->将要管理的文件添加到暂存器-->提交记录到git仓库

创建/初始化git仓库:git init(在工作目录下打开git bash,键入命令来创建git仓库)

2、使用配置(执行一次即可,如果需要修改配置那就重新执行一遍)

配置提交人的姓名:git config --global user.name  姓名

配置提交人的邮箱:git config --global user.email  邮箱

查看git配置信息:git config --list

3、提交

查看文件状态:git status

将需要管理的文件添加到暂存区:git add

        添加某个文件(例如:index.html)到暂存区:git add index.html

        添加当目录下所有的文件到暂存区:git add .

将暂存区的内容提交信息到仓库:git commit -m 提交信息;提交信息是必填项

查看提交记录:git log

4、撤销

情况(1)工作目录中的文件出现了编辑错误,需要撤回到某个编辑状态:

        前提:暂存区中是存在这个文件的,也就是说这个文件是被git所管理的

        情况(1-1)使用暂存区中的文件覆盖工作目录中的文件(例如:index.html)

                git checkout index.html

        情况(1-2)使用库中的文件去覆盖工作目录中的文件(例如:index.html)

                先将库中的文件记录返回到暂存区:git reset HEAD index.html

                再将暂存区的文件记录返给工作目录中的文件:git checkout index.html

情况(2)将文件从暂存区移除

        可能某个操作使得某个文件被git管理了,但是不想让其被管理,所以要移除掉

        git rm --cached index.html

情况(3)工作目录中的文件和暂存区中的记录都存在问题

        需要将提交到库中的记录恢复出来:git reset --hard 提交id

        其中提交id可以通过 git log来查看提交记录,提交记录中可以看到提交id

        注意:如果恢复第3次提交记录,那么在记录3提交后所创建的文件及记录(记录4...)都不复存在,在记录3后创建的文件也会因为记录3的恢复而从工作目录中删除掉。

        【举例:现在提交了第3次记录,然后创建了demo1.html和demo2.html,当把记录3恢复出来时,工作目录就会变成提交第3次记录时候的状态,那个时候还没有demo1和demo2,所以也就将demo1和demo2给删除掉了】

5、分支

git提供了分支功能,从主分支(master)可以创建多个分支,每个分支之间互不影响。

例如:在master主分支上创建develop开发分支,再在develop开发分支上创建feature功能分支。

查看分支:git branch(当前所处分支的分支名会是绿色,并且前面会有一个小星星的标志) 

创建分支:git branch 分支名

切换分支:git checkout 分支名

        注意:切换分支前一定要将分支上的工作提交到库中,确保当前分支的工作区是干净状态,否则主分支上也会看到你的残留工作文件。提交之后,在主分支就不会看到当前分支上的工作文件了。

合并分支:git merge 来源分支

        例如:将develop开发分区合并到master主分区上

                   先切换到主分区上:   git checkout master

                   再将develop合并过来:  git merge develop

                   合并后,主分区上也可以看到来源分支上的文件;合并后,来源分支依然存在

删除分支: git branch -d 分支名

        如果要删除的这个分支没有被合并,那么默认是不被允许删除的

        如果要强制删除没有被合并的分支可以使用:git branch -D 分支名

        删除时,首先要切换到其他分支上,否则处于当前分支又要删除当前分支,是不被允许的!

6、临时缓存:git stash

        如果在切换分支前当前分支中的任务还没有完成,并且还不进行提交的话,那么当前任务就会暴露在其他分支上,但是对于一些没有完成的任务,还不能确定下来所以不能提交,那么这个时候又要去切换分支去解决其他分支上的问题,可以临时存储改动,然后就可以随意切换分支了。

        使用git stash可以临时保存当前分支上的改动,可以将当前的工作区暂存到剪贴板,状态是暂存,但是并不会提交到库中。当把其他分支上的问题解决之后,再回到这个分支上,最后把暂存的修改恢复过来就可以继续了。

        git stash save "保存信息" :在暂存改动的同时添加备注,也可以不添加保存信息,直接使用git stash 来暂存,只不过没有添加备注信息,在恢复暂存时不方便查找识别

        git stash list:查看暂存记录

        git stash show:显示做了哪些改动,默认show第一个存储

        git stash show stash@{num}:显示第几个改动(num是存储改动的索引值,从0开始为第一个)——显示第2个:git stash show stash@{1}

        git stash show -p:显示第一个缓存的改动

        git stash apply:应用缓存记录,但不会把存储从存储列表中删除掉,默认第一个存储

        git stash apply stash@{num}:应用第几个存储(num是存储的索引值,从0开始作为第一个),不会把缓存记录从存储列表中删除——应用第2个:git stash apply stash@{1}

        git stash pop:应用/恢复缓存记录,然后将此记录从存储列表中删除,默认应用/恢复第一个

        git stash pop stash@{num}:应用第几个存储,应用第2个:git stash pop stash@{1}

        git stash drop:将缓存记录从存储列表中删除

        git stash drop stash@{num}:删除第几个存储记录,第2个:git stash drop stash@{1}

        git stash clear:删除所有的缓存

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值