今天在网上学到了git的tag的使用,并且复习了一下 本地连接到远程的整个过程,再记录一下
git远程管理:
小程序有好多知识点,但是在一个项目中讲所有的知识点,会显的很臃肿
如果用分支去管理,每一个分支讲一些知识点,那么将会有非常多的分支,分支管理就会非常的麻烦,繁琐,分支切换等等
这个老师最后决定用tag来管理项目
一个知识点打上一个tag,
然后想看哪个知识就切换到对应的tag
当第一个知识点演示完之后,会打上一个tag,然后不会在tag1的基础上演示第二个知识点,这时候会执行:git reset --hard 将版本回退到初始化的那个版本
之后再演示第二个知识点
我们执行:git chekout tag1
git reset --hard 回退到初始化版本
git chekout tag2 等等来切换到对应的知识点
我们现在新建了一个小程序项目,现在还没有纳入git管理
我们首先需要在我们的小城需项目 右键进入git bash here
打开git命令行工具
执行git init 初始化一个本地仓库 之后项目内会出现.git文件,这是一个隐藏文件 可以执行git命令查看 此文件也可以 文件中的 组织---文件夹和搜索选项---查看---隐藏文件和文件夹 选择显示或者隐藏 隐藏文件 来看到 隐藏的文件,一般的电脑默认是隐藏 隐藏文件的
再执行 git add . (点) 将所有的文件添加到暂缓区里面
再执行 git commit -m "初始化项小程序项目" 提交一下 这样 git就已经管理我们的项目了
当前只是一个本地的git,并没有托管到任何一个远程仓库
这时我们需要在码云上创建一个远程仓库(课程上是在github上,和码云一样的)
点击创建仓库后,写上仓库名称,会自动生成因为路径(也可以自定义 这是之前没有的功能)
然后 我创建了一个私有仓库,也可以创建共有仓库(其它人可以看到),我这里选择了私有仓库,因为共有仓库上会让选择其它的东西,麻烦所以就没选择
我没让自动生成readme.md文件,听老师说的在向程序项目中 显的碍眼
然后点击创建按钮,会出现一些提示连接远程仓库的方法(代码)
然后我们就先将本地仓库和刚创建的已有仓库连接
git remote add origin 仓库地址.git
将本地仓库和远程仓库连接上之后,将本地代码先上传一下
初次上传需要添加 -u 参数
git push -u origin master
执行过之后,会让输入账户名和密码 然后本地仓库的代码就会上传到远程仓库了
接下来我们练习一下打tag
在index.wxml中随便加点代码
然后在git管理界面执行以下命令
git add . 将所有文件提交到缓存区
git commit -m "练习打tag" 提交一下
git tag 01_知识点1练习打tag 打tag
我们可以输入git tag 命令 查看当前打的所有tag
加入刚才在代码中的修改时第一个知识点,我们已经打过tag了
我们可以查看一下所有的提交(我们已经提交了两次)
git log
然后我们接下来要讲第二个知识点,这时我们就可以 回退到初始代版本 然后再写第二个知识点
版本回退到最初版本:
git reset --hard 黄色的版本号 (--hard 参数是 强制回退到指定版本)
现在我们已经回退到初始化项目 这个版本了,我们可以写第二个知识点了
此时看一下刚才的第一个知识点 写的内容已经消失了
然后我们再在项目中加点代码,比如说这代码就是第二个知识点,讲完了
我们再做一次提交,给知识点二打个tag
git add .
git commit -m "练习版本回退"
git tag 02_知识点2练习版本回退
然后再查看一下所有的tag
git tag
再查看一下提交日志:
git log
接下来我们可以将这两个tag,推送到远程
git push --tags (将这两个tag 推送到远程 不是git push origin master) 依然会让输入 码云的账号和密码 之后就会 推送到远程
之后我们在远程仓库就会看到这两个tag了
我们如果想在远程查看每个知识点,就点击对应的tag切换一下就行,很方便
当然,在本地想查看不同tag的代码时
我们可以执行
get checkout 01_知识点一练习打tag (我们写出 01 后敲一下tab键 会自动补齐的)
此时 知识点1的代码就在本地了
同样的在本地查看 知识点2
get checkout 02_知识点2练习版本回退 (同样写出 02 后敲一下tab键 会自动补齐 tag)
此时我们就可以在本地查看 知识点2了 很方便
之后我们如果想继续讲第三个知识点,我们就可以 执行 git reset --hard 版本号 来回到最初的小程序初始化代码 (提交的版本号可以通过 git log查到)
git reset 版本号是回不去最初版本的 因为 我们有更改,所以需要加上--hard参数
。