git入门及常用操作指引

git是什么

git就是代码库,那么如果你要问什么是代码库?你可以想一下数据库~数据库是放数据的,代码库自然是放代码的。。
~具体为什么要学这玩意儿,因为上手之后确实很好用,我目前的测试代码均用git在管理,而且目前国内很多公司也已经在使用git了,要是在互联网界不会git,那么你可能已经out了~

git环境搭建

首先,搭建git环境,我自己是用mac的~所以只能介绍一下mac的,mac么,本来就预装了git…基本不用搭,然后去git库搞一个SSH,就可以在终端敲命令行了,如果你还是要装一下git的环境,那么我推荐用homwbrew装吧,mac环境管理的神器,我的mysql,sqllite,gradle等等都用他装,非常好用,有兴趣可以装一个好好了解一下,用它装git也是非常简单的,直接brew install git,成功后就可以直接使用了

git简单用法

装好了git,你需要一个git库来练手,我推荐github,嗯,就是很有名的github,去申请个账号吧,然后跟着步骤去搞一个SSH

克隆远程代码库到本地

一般来说,先要建立关联,最简单的办法就是,通过终端进入你想要放代码的根目录,然后输入:

git clone ssh链接

ssh链接的代码库就会马上克隆到你终端所在的目录,而且与远程的git代码库建立关联。

拉取远程代码

如果有人在远程库提交了代码,那么你可能需要同步到本地,怎么做呢?输入:

git pull

这个命令会将远程代码的分支名同步到本地,而且会将当前所处分支的代码同步到和远程一致。ok,可能有人要问什么是分支了,那么现在将一下什么是分支。

何为分支

如果你是个新手,刚新建了一个崭新的代码库,那么你一定看到过master这个东西,ok,它就是你的master分支。可以尝试输入:

git branch

此时,应该会输出一个master,那么它就是你的master分支了。

分支有什么用?

我们代码库通常都要面对多个人同时开发多个功能,那么假设大家都在一个分支上工作,如果有一个人提交了不稳定的代码到了这个分支上,那么这份代码发布到测试环境后将会变的极不稳定,如果此时有一个线上的bug要马上修复并且发布,就无法避免的要把这份有问题的代码发布上去,那就会让事情变的更严重,总之,这种事是非常痛苦的。那么如何解决呢?答案是:开分支。
每个分支上的代码是不同的,一般来说,每个新功能都会开出一个独立的分支去开发,比如我要做一个email功能,ok我就会去从最稳定的线上代码A分支开出一个独立的分支去做这件事,当这个功能相对稳定后,我会将代码合并到分支B,有些依赖email分支的功能就可以一起做一些联调之类的事情了,直到没问题后才能合并到稳定分支A。那么这里的分支A一般来说就是master了,分支B一般来说就是dev分支了。下面说一下如何开分支

如何开分支

开分支很简单,比如我现在需要在master上开一个分支出来做一些开发,那么首先切换到master分支上,一般会担心有人合并过代码到远程master分支,所以最好先拉取一下代码,输入:

git pull
git checkout mater

然后如果看到有这样的提示:

Switched to branch 'master'
Your branch is behind 'origin/master' by 19 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)

那么说明切换到master成功,但是远程的master有19个提交,此时你需要输入一下git pull来把远程代码拉取到本地,再次输入:

git pull

如果你切换分支看到的是:

Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.

那么说明你与远程的master分支代码一致,不需要拉取代码。
ok,现在我们来开分支。比如我们现在要开一个叫dev的分支,那么输入:

git checkout -b dev

此时的输出应该是:

Switched to a new branch 'dev'

此时你就切换到dev分支了,可以输入:

git branch

你应该可以看到master和dev两个分支,在dev的前面有个*号,表示当前所处的分支。你可以通过命令来切换分支:

git checkout master

就可以将分支切换到master,可以通过git branch来查看。

将分支推到远程

此时我们的dev分支只是一个本地分支,在远程仓库看,还没有dev分支,那么要如何将dev分支推送到远程呢?请先将分支切换到dev,然后输入命令:

git push origin dev

然后去远程仓库查看,就可以看到远程也有一个dev分支了。在git中,origin往往代表远程仓库。

提交代码

现在将分支停留在dev上,然后新建一个文件,或者随意改动一些代码。查看一下当前分支的状态,命令为:

git status

此时会输出当前分支的状态,你可以看到刚才改动的文件列表出现了。我们现在需要讲它提交到dev上
首先,加入这些文件到准备提交区域,命令为:

git add --all

将全部文件加入到备提交状态,然后输入:

git commit -m "提交日志信息,输入本次提交的大致内容即可"

此时提交的内容就已经提交到了本地的dev分支中,然后我们可能需要将它提交到远程dev仓库,输入命令:

git push

此时就会将代码提交到远程的dev分支了。

合并代码

这时候如果我们将代码切换到master,会发现根本看不到刚才dev做出的修改,这就是分支的好处之一了。如果此时需要将dev分支的代码合并到master,那么请先将分支切换到master,然后输入命令:

git merge dev

就可以将dev的代码合并到master,此时再看刚才dev做的修改,就可以看到咯。

回退代码

好吧,刚才的合并是有点随意了,把不该合到master的东西也合进来了。悲剧啊,那怎么办?回退~
如何回退呢,需要先查看一下日志:

git log

我们可以看一下提交日志,你会发现每个提交都有一个commit id,比如:

commit b3204f1dc2f7d57042cdd67c1dda2a0f9549c864

这个就是提交号了,找到我们需要回退到的提交号,然后输入:

git reset --hard b3204f1dc2f7d57042cdd67c1dda2a0f9549c864

就会将代码回退到这次提交的状态

常用的就先讲这么多了~剩下的下回分解

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值