1.发展史及其简介
参考大神的个人网站
https://www.liaoxuefeng.com/wiki/896043488029600/896202815778784
2. git安装和使用
点击上面的网址安装后点击下一步即可,网速会比较慢 如果下载失败的话多试试
然后在命令行输入你的github或者码云的用户名和邮箱
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
哦对了,在这之前好像还有一步是让你验证下是你本人操作,需要你输入gitee或者github的用户名是密码验证是你本人在操作。
这个信息将会被存储到你的计算机的windows的凭据管理器里面,如果希望更改先删除下,然后在命令行会自动弹出让你输入用户名和邮箱的弹框。直接在你计算机上搜索 凭据管理器 就可以了
3. 开始使用
在你需要用git管理的地方创建一个文件夹 在它的目录下执行
$ git init
执行之后会在你的当前目录下生成一个 .git 文件夹 这个文件夹是隐藏的它是git的版本库,这个在下面咱们再说。
然后就可以执行添加文件的操作了
$ git add .
$ git commit -m "提交添加的备注信息"
建议这么做,其实git commit -m "xxxx" 这一行是可以通过配置不用写,不过在学习还是在你实际的开发过程中都是不推荐的,所以想要知道怎么操作的,自行google吧。
4.工作区和暂存区
上面只是在说怎么使用,接下来咱们来说下刚刚发生了点什么。
- 先来说说概念的东西,工作区其实你可以理解成你的文件夹,你想用git管理的这个文件夹其实可以称为工作区
- 暂存区:在上面说过 .git 这个文件夹其实是 版本库 暂存区是这个版本库里面一个最重要的部分,只有搞懂了暂存区是什么,才能真的明白git的一些操作到底实在干些什么东西。除此之外还有一个master分支,还有一个指向master 分支的指针。
好了介绍完上面的概念可以说上面的两行命令发生了什么,git add . 是把你修改的内容从工作区提交到暂存区,git commit -m "xxx" 是把暂存区的内容提交到当前分支。
在小黑框下试一下 其实发生了什么一目了然 我修改下我的文件 执行
$ git status
然后执行 git add .
执行git commit -m "-------"
5. 版本管理
回退到上一个版本
$ git reset --hard HEAD^
回退到任意版本,其中版本号可以通过 如下方式获取
$ git reset --hard 版本号
$ git log 如下图所示
$ git log --oneline 简单的日志
其中框选的部分就是版本号,在填写的时候没有必要全部填写只写一部分就行 git 会 帮你自动补全
6.撤销修改
当我们改了文件中的代码,但是发现改了不如不改,Crtl+Z好不好使不知道,因为中途你可能关了编辑器。就算好使也得眼睛紧紧盯着电脑屏幕仔细的回想我代码上次更改的样子。Low的,所以可以使用命令把你代码恢复到你上一次提交之后的样子
$ git checkout -- . 全部
$ git checkout -- 1.vue 单个文件
效果如图
7. 删除文件
这个我在工作中几乎用不到 简单说吧 命令就是 git rm 文件名
其实就是把你增加的文件删除掉 和 可以用git add . 代替,因为 git 管理的是修改 其中修改也包括删除,你直接把你不想要的文件删除掉 执行 git add . 就行,别搞这些花里花哨的。
8. 新建远程仓库
这里以码云为例吧,其实无论码云也好 github 也罢。都是代码的托管平台,无非就是github上的用户量多,知名库多点。码云的速度快点罢了,实际开发其实用啥都一样。
按照提示新建一个仓库 新建完成后 会出现下面页面,因为我们在上面已经完成了把自己的代码推送到暂存区的过程,我们可以直接复制下面的那两个命令
这两个步骤分别干了什么,第一句 是 添加一个远程仓库 地址是 http://xxx,名字叫 origin 我感觉他这命令有一点点操蛋,因为我英语学得不咋样。
按照咱们学习英语的习惯 不应该是 git remote add “远程仓库的地址” named as origin 吗?你看咱们看火影,斑爷的台词 扣no嘛哒啦嘎 欧嘛诶哦塞依giao偷用得依撸 翻译成中文字幕就是 “我斑愿称你为最强”。 这里的如果换成它这英语的话 称 这里是个动词,可以相当于 git remote add 这里的仓库地址 可以当做这句话里的 你 最强才是 这个句子里的 origin 。你们说这样理解对不对啊,看我写的东西不光能学编程,还得学习语文,英语和日语。血赚有木有啊。
下面那行就是 把本地仓库的内容推送到远程仓库 因为是第一次推送 所以加上了 -u 把本地的master 分支和远程仓库的master 分支关联起来。
下次推送的时候直接 执行git push 就行了。
以上是git最最最基础的用法,那个关于分支的操作和解决冲突以及现实协作开发的过程我们下次再说,在实际的开发过程中解决冲突还是得会的,我旁边一个哥们解决个git冲突一天没解决,还是叫别人帮忙搞得,这可能成为他被开除的其中的一根稻草吧。其实解决个git冲突也不难下次听我慢慢道来吧。
最近的更新应该会比较频繁。8月立个flag, 博客更新15篇,用强制输出自己的方式增强自己的总结和沟通表达的能力
那好了,今天我们的抽搐就到这里了,感谢大家宝贵的时间,我们下次再见!