git是什么?
- git是一种分布式版本管理系统。在我们编程的过程中难免会对我们的代码进行多次修改,于是在我们一般会采用将每次修改的代码都保存为一个文件,但是时间久了我们就会忘了每次的改动,很难准确找到需要的版本。而git就是一个能每次记录我们的文件改动,并且随时重置到任意保存版本的状态,这就使我们对代码的管理方便了许多。
git的基本操作
-
安装git
安装好过后我们会看到git bash这个图标,这是Windows下的命令行工具
- 填写用户名和邮箱作为一个标识
在命令行下输入以下代码,然后回车,为仓库指定用户名
git config --global user.name "你的名字"
然后继续输入以下代码,然后又回车,为仓库指定邮箱
git config --global user.email "你的邮箱"
-
创建一个版本库(其实就是你存放代码修改记录的仓库)比方说进入D盘创建一个名为FRED的文件夹作为版本库
这时我们就可以看到创建好的文件夹了,但是这个时候它还不是一个仓库,我们需要进行git init
让这个目录变成我们的仓库
这个时候我们就会看到目录里出现了一个.git文件夹,这个就是我们的版本管理仓库,不能随便修改它,否则会发生意想不到的错误
- 把文件添加到版本库当中
我们先在版本库目录里创建一个test.txt文件并写入如下内容
然后再用git add test.txt
命令将其传入暂存区,注意这个时候并没有将文件添加到版本库当中,暂存区这个概念还比较复杂,在以后的学习中会深入理解
然后再用
git commit'
将文件提交到仓库当中,也可以使用git commit -m '注释'
来提交,若不加注释会弹出提醒你加注释的界面,输入:wq
即可退出这时我们可以使用
git status
来检查是否还有未上传的文件我们看到工作区已经没有文件了,说明文件上传完毕,上传文件的步骤我们已经学完了,可以简要的概括为先用
git add
将文件上传到暂存区,再用git commit
将文件上传至版本库我们在对test.txt做一次修改,在后面添加一行bbbbbb,用以上步骤上传至版本库
当我们对文件进行了修改,想查看到底进行了怎样的修改,可以使用
git diff 文件名
命令,但是这都要在文件提交到版本库之前进行,否则查看不了,下面进行演示,在文件第三行添加cccccc,使用git status
命令
这时我们发现有一个没有提交的修改,于是我们使用
git diff 文件名
来查看我们对文件进行了怎样的修改两个
@@ @@
之间的数字告诉我们文件从两行变成了三行,并且在bbbbbb这行后面增加了一行cccccc最后我们上传文件到版本库分别调用
git add test.txt
git commit -m '这是第三次修改'
命令
- 版本的退回
到目前为止,我们对文件一共进行了三次修改,我们使用git log
就可以对历史提交记录进行查看
可以看到黄色的部分就是版本号,Author后面就是最开始存入的用户标签,Data后面就是提交时间,是不是很方便呢,如果认为这个界面太长,我们可以使用
git log --pretty=oneline
来简略显示,使版本信息更加直观我们可以看到版本的排序是按照从新到旧的顺序排放的,前面的黄色部分是版本号,退回版本操作我们有如下三种命令
1.
git reset --hard HEAD^
后面跟的^代表要退回的版本个数,例如有两个就代表退回两个版本
我们返回到第二次提交的版本,输入命令
git reset --hard HEAD^
,可以看到test.txt文件中的内容已经变成了第二次提交时的内容
2.git reset --hard HEAD~要退回的版本数
3.git reset --hard 版本号
其他的退回方式与第一种类似
- 创建远程仓库并将内容推送到远程
1.首先我们要创建一个github账号
2.根据指引我们创建好一个远程仓库,下面就是我创建的一个远程仓库命名为 Helloworld
3.克隆本地仓库到远程仓库
这个时候github提示我们创建远程仓库的几种方式,我们选择从本地仓库克隆这种方式,根据提示我们在输入
git remote add origin https://github.com/FREDERROR/Helloworld.git
git push -u origin master
结果如下这时我们进入github查看自己刚才创建的仓库可以发现远程仓库中的内容已经和本地仓库中的内容相同了
从现在开始,只要修改内容在本地做了提交,就可以通过
git push origin master
命令将本地master分支的最新修改内容推送到github上了,下面我们来进行一下测试,我们在本地库里创建一个名为test2.txt的文件,推送到远程库
这时我们就可以在远程库中看到我们刚刚创建的test2.txt文档
网友评论