ios-git指令

我们如果想要知道git有什么指令,可以在终端中输入git help

想要查看某个指令的帮助的话,我们可以使用git help commit 就是去查看这个commit指令的操作文档了

我们如果已经可以看到这个文档了,我们想要去查看这个文档中有我们指定的关键字的可以用一个/ 加关键字

这里我拿clone举个例子,比如说我们输入了git help clone,出现的东西如下所示


我们下最后一行输入了/clone之后,显示效果如下所示


如果在查看文档的时候想要翻页的话,我们可以使用F是下一页,B是上一页

如果要退出帮助的文档,输入Q再回车就可以了。

简单的介绍下git的一些指令

初始化git本地仓库: git init

创建文件: touch 文件名

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

添加多个文件到暂存区用git add . 这里.代表的就是当前文件夹

提交代码 git commit -m "注释" 提交到本地的仓库中

查看文件状态 git status

这里需要注意的是,如果我们直接git commit了没有加-m和注释会来到下面这个界面



这个时候我们敲一个 i 然后回车,最后一行会显示成这样子

然后我们可以在最上面进行输入我们的注释就可以了,输入完毕之后再按esc,然后再按shift + : 然后再输入wq这样就可以了


git中配置账号信息

配置局部的信息的话就是没有-global的

如果要配置用户名的话就是git config user.name "hhhhh"

如果是邮箱信息就是 git config user.email "kkkk.xxx.com"

如果不想每次创建新的仓库都需要去配置下账号信息的话,我们直接可以进行全局配置,在git config 后面加一个--global就可以了。

这个全局信息,在mac上我们可以在finder -> 前往->个人->.gitconfig中进行查看,注意这个文件是隐藏文件。


还有就是在git中每当我们改变了一个文件之后,都需要重新的去git add一下,然后再做提交操作。


git中查看日志我们可以用git log

这样输入的信息如下,commit后面是版本号是40位的哈希值,保证唯一,只要我们提交上去的这个版本号和服务器不一样就可以进行提交

一行就是作者信息,以及提交的时间。

这样去查看git的日志可能会比较多比较繁琐,我们也可以自己去自定义log的输入我们可以这么做,输入以下命令,然后我们就可以通过git lg来输出日志了

  
  
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --"
作者:猴子下山写代码 链接:http://www.jianshu.com/p/f0580c893dc4 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)
 %C(bold blue)<%an>%Creset' --abbrev-commit --"
输出的效果如下所示,只提供版本号的前7位了


git中给命令起别名

git config alias.st "status"

其中.后面的字符代表的是要简写的命令,双引号里面的字符,代表的是原来指令的全称

如果我们要配置全局的也是一样的就是在git config后面添加一个--global就可以了。,


git的版本回退

如果文件已经commit过了,我们可以通过git reset --hard HEAD^表示回退一个版本,其中一个^表示一个版本,想要回退两个版本可以HEAD^^,当然也可以HEAD~2

回退到指定的版本,我们就可以通过 git reset --hard 版本号 ,这个版本号是7位的版本号

如果文件没有commit的,我们可以使用git reset --hard HEAD 回退到当前的最高版本

或者可以使用检出当前分支的最高版本:git checkout Person.h,是这个Person.h回到commit的版本

还有一点需要注意的是,当我们回退了几个版本之后,我们再点git log,可以就没有之前的版本号的信息了

这个时候我们可以通过git reflog来进行查看之前每一次的修改日志的版本。


如果我们回退直接采用git reset HEAD^ 不添加参数的话,默认就是mixed

reset可以用三个参数分别是soft hard mixed

简单说下区别hard就是比如说有三个状态A,B,C,都是提交了文件的

我们用了hard,想要回退到B,这样C的状态就会没掉了,找不回来了

如果我们用--soft,C状态还是有的,输出git sttaus显示是绿色的文件但是我们要去重新提交才会回来

如果是mixed就是C的状态还是有的,会将本地版本库的头指针全部重置到指定版本,把在这次版本之后提交的文件和变更全部移动到工作区。也就是我们查看状态的时候是以红色文件名的形式显示的


git reset HEAD filename表示的是回退文件,将文件从暂存区回退到工作区,也可以用git reset filename


我们还可以通过git config -l来查看配置的信息

通过git config - e来进行修改配置信息,这里编辑是通过VIM编辑器来编辑的

想往里面输入内容,我们可以输入一个i,进入编辑,下面就会出现INSERT的英文,然后如果要退出编辑就是esc

退出VIM编辑器就用shift + : 输入wq,就是保存退出。


查看某个文件的修改日志

git log 文件名

一会方式查看日志信息 git log --pretty=oneline

查看最近N次的修改

git log -N N就是我们要输入的几次

git diff 查看文件的最新改动的地方

查看某个文件最新改动的地方就是

git diff 文件名

第三方的托管平台有GitHub,GitLab,码云等等。

在github上我们创建仓库的时候,会发现有这么一栏,关于这个的选择,我们一般如果去选择的是MIT许可证,只要用户在项目副本中包含了版权声明和许可声明,别人就可以使用你的代码,没有任何限制。Apache 许可证是类似 MIT 许可证,但它同时还包含了贡献者向用户提供专利授权相关的条款

我们如果在本地新建了个项目初始化了一个本地的git仓库要和GitHub上面我们所创建的远程仓库去关联起来的话,我们首先要去终端当中去cd到我们的项目文件夹中,然后我们可以在终端输入这样的命令git remote add origin,为什么是origin,因为在克隆版本库的时候我们使用的远程主机会自动的被git所命名,你使用git clone一个仓库的时候, 会自动创建一个别名为origin的远程连接到你clone的仓库。

git要求连接的每个远程主机都必须指定一个主机名,我们可以通过git remote命令去列出所有已经连接了的远程主机。使用git remote -v ,可以参看远程主机的网址,当我们使用了git remote add name url 就是创建一个连接到远程仓库的连接. 添加后你可以使用name做为url的一个别名

当我们在github上面没有勾选创建read me文件,直接git push是会报错的,会报下面的错误,所以我们需要去用git push  origin master,需要去指定一个分支,将本地的master分支推送到origin主机的master分支。如果master不存在,则会被新建。


如果我们在push的时候出现这样的错误,因为目录中没有文件,空目录是不能提交上去的


当我们使用SDWebImage也好AFN也好都会有一个版本,其实都会在这里进行显示,如下图所示

然后我们再点击进入查看

这里需要注意的是release是Github、码云等第三方的托管平台提供的更高层的概念。其实git本身是没有release这个概念的,只有tag,tag是特定提交commit来说的,也就是说是每个tag对应一个特定的commit,git本身其实只能记录项目修改,本质上是不适合将编译好的项目二进制文件记录下来。所以这些平台通过release则把项目二进制文件保存了下来,方便用户下载,也方便查找特定版本的二进制文件。

我们一般是在本地中先对现阶段的代码打上tag之后再去提交,我们可以通过git tag去查看标记

打tag的话我们可以直接使用,可以直接使用git tag v0.0.1,都说前面这个是轻量级的,当然也可以使用重量级的git tag -a v0.0.2 -m “0.0.2的版本”,参数a就是annotated的缩写,参数m指定标签说明

向远程仓库提交tag,git push --tags 这个命令是提交所有的tag,这样我们就会看到有一个release版本了,可以将tag理解成一个指针,通过它我们可以找到我们commit 产生的40位的哈希值的版本号,然后再去找到相应的代码


当我们打了tag之后,我们去提交,其实是不会去重新提交一份代码的,只是提交一个记录我们打的标签而已。

如果我们想要修改了项目的代码并且打了tag为0.0.3 git tag '0.0.3',想要提交上去的话,我们就要去使用git push origin 0.0.3,这样子我就能去看到我们提交的版本了。

如果我们想要去删除tag的话,我们可以去使用 git tag -d 0.0.3去进行删除版本,然后再提交到远程的话去使用 git push origin :0.0.3,然后再去看远程仓库


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值