十步上手git,git的历史版本切换与密匙配置

mac2024-04-19  106

十步上手git,git的历史版本切换与密匙配置

背景

git是一个版本管理工具,是可以在你电脑不联网的情况下,只在本地使用的一个版本管理工具,其作用就是可以让你更好的管理你的程序,比如你原来提交过的内容,以后虽然修改了,但是通过git这个工具,可以把你原来提交的内容重现出来,这样对于你后来才意识到的一些错误的更改,可以进行还原。

关于github,这是一个网站,就是每个程序员自己写的程序,可以在github上建立一个网上的仓库,你每次提交的时候可以把代码提交到网上,这样你的每次提交,别人也都可以看到你的代码,同时别人也可以帮你修改你的代码,这种开源的方式非常方便程序员之间的交流和学习。 看了挺多这类 的文章,介绍入门的都不是很全面。 我们今天就是要以实际例子(hello world) 快速上手git,懂得配置git和github,修改自己的文件,提交文件,切换自己提交过的版本 等。

安装git,注册github git下载:官网下载 github注册:https://github.com/ 输入用户名,邮箱,密码 注册之后登陆进去即可创建自己的仓库

配置github与git: 第一步,在自己的github上初始化一个repository。如图,点new repository,然后进行配置,建议.ignore和license别设置为none; 第二步:安装好git需要本地找个自己喜欢的或创建一个目录,右击,出现Git Bash Here;然后输入:git init 进行仓库初始化,这个操作会在你所选目录下生成一个隐藏目录.git(关于这个目录是啥,想了解的自己找度娘去) 第三步:配置自己github账号与邮箱: 1.git config --global user.name ‘your username’ 2.git config --global user.email ''your email"

第四步:配置SHH密匙(两个文件id_rsa,id_rsa.pub)

先是生成密匙,有则直接跳过

cd ~ ssh-keygen -t rsa -C "your email@yy.com"

然后一直enter,即可,等到出现如下图标,表示密匙生成。(图为借的) 再打开密匙文件id_rsa.pub

cat ~/.ssh/id_rsa.pub

复制里面的内容加到自己的GitHub账号下的SHH keys中的key那栏,其中,title随便填 (我的已经配置好了) 以上就配置好我们的git与GitHub了! 3.关于文件的写入,修改,更换历史版本(以写一个helloword.java为例子) 第一步:把自己想托管的文件(helloworld.java)放在所初始化的git仓库目录(等会git bash here,我的是git_test目录) 然后查看目前文件的状态:git status -s或者git status 二者区别就是简单显示与复杂显示 ??表示未知属性,说明我们是直接粘贴在文件夹里的 要提交,就得先追加属性:git add helloworld.java 再次查看状态git status -s,显示为 A 了,说明已经加到暂存区了(git add 命令格式自己查一下) 可以提交了git commit helloworld.java -m "版本1.0"再次查看状态,发现已经对应的文件了,被提交到了.git文件里面了,如图 接下来我们对这个文件进行更新迭代: vim helloworld.java 然后按”A"进行插入,修改内容 末尾加上版本2.0; 编辑好了,按ESC退出编辑模式,shift+ ; , 然后输入"wq",表示保存退出(其他命令还有“w”,“q","!q"等 再次查看状态,发现属性为M,意思是修改了,重新更新提交 git commit hellworld.java -m "版本2.0” 列出当前的helloworld.java版本git log 发现我们已经成功把git创库里面的helloworld.java版本升级为2.0了.(HEAD的位置,就是当前版本位置) 注意前面的commit 它后面跟着的一串东西就是我们每个版本所对应的id(用于切换版本用的) 可以用vim helloworld.java查看当前的版本内容 接下来换回1.0版本 先简化显示,找到对应的提交版本id(我这里版本1.0对应1a90c3b)

git log --oneline

更换版本1.0(可以去了解一下图中的HEAD是啥)

git reset --hard 1a90c3b

重新打开helloworld.java文件,看是否更新回第一代版本 版本切换成功! 就写到这里吧! 结语:这是我的第一篇博客,我是初学者,自己总结的经验,有些可能不够好,但是我想,那些初学者就需要这样的文章哈哈哈,快速上手的,看了这篇文章应该能直接上手!后续的一些命令再自己学!欢迎大家与我留言交流😄 有哪些不好的地方还请多多包容!

最新回复(0)