git的使用-本地篇

目录

1. 添加用户名

2 初始化本地git

3 第一次版本管理

3.1 上传代码到暂存区

3.2 查看状态

3.3 上传到远程仓库(本地)

4 版本回退


git是一个强大的分布式版本管理软件,可以在实现离线版本控制,现在一步一步来学习git,首先是离线的状态下本地的使用

1. 添加用户名

想要使用git,必须先要注册远程仓库,假设我们在github上注册了一个用户

记住用户名、邮箱

这里需要注意的是,现在注册github可能会需要科学上网,登录倒不用

定位到当前工作目录下(或者直接在文件夹下点右键,选Git Bash Here),假设该路径包含已经包含了一个c文件(hello.c)

然后做以下操作(添加全局用户)

git config --global user.name "aimxu"             # 添加github用户名
git config --global user.email "[email protected]"     # 添加github邮箱

【注】

如果不用 --global 参数就只是在本项目中添加用户;

但是如果已经建立了全局用户,必须现在该目录下去掉全局用户

git config --global --unset user.name    # 取消在该目录下全局用户名
git config --global --unset user.email   # 取消在该目录下全局邮箱
git config user.name "josh-aimxu"                 # 在当前目录下创建用户
git config user.email "[email protected]"     # 在当前目录下创建邮箱

2 初始化本地git

当前文件夹是空的,需要进行初始化

git init    # 初始化git

注:执行该语句后,会出现.git文件夹

这是一个隐藏文件,包含了git的所有信息,非常重要,一定不能删除。

3 第一次版本管理

首先看一下下面的图片,这是git的一般流程

工作区(work space)就是我们电脑里关于用git管理的文件夹

暂存区(staging)是在本地电脑中,上传拿到本地仓库前,暂时存放将要改变的代码的区域

本地仓库(local repository)是在本地电脑中,存放已经确定修改好的代码的区域

远程仓库(remote repository)是在网络上,存放代码的地方

在后面的课程里能看到以上所有的名词。

3.1 上传代码到暂存区

此时我们写了一个c代码文件,hello.c

使用git add语句,可以把代码上传到暂存区

git add hello.c                # 上传代码到暂存区 staging

 3.2 查看状态

可以利用 git status 命令来查看工作区和暂存区里的区别

git status

如果没有特别的输出,则现在的暂存区和工作区是一样的

 

如果有消息,则暂存区和工作区不一样(出现红色的字样)

这时候我们要怎么做?

可以先查看文件的不同

git diff

绿色那一行就是工作区和暂存区的区别,可以看到,好像说错话了!

此时两个方式:

  1. 直接添加文件到暂存区,更新代码(等着被会法伺候)
  2. 从暂存区恢复文件(我还想多混两年)

git restore hello.c    # 如果工作区和暂存区不一样,可以从暂存区恢复文件到工作区

【注】

或者使用checkout也可以,但是不是推荐用这个命令,后面我们会讲到v

git checkout hello.c    # 如果工作区和暂存区不一样,可以从暂存区恢复文件到工作区

一切如常 

3.3 上传到本地仓库

代码写的差不多了,应该可以上传到本地仓库了,这时可以使用命令

git commit -m "my first git"

-m 参数表示message的意思,给上传的时候添加相应的说明

这是使用git log命令,可以看到历史上传的版本

不错,算是完成了第一次版本管理。

4 版本回退

一切如常,突然有一天手痒

还手贱

此时该怎么办?

没关系,用版本回退就可以了,所谓版本回退,就是可以把本地仓库中最新的版本下载到暂存区里。

git reset HEAD hello.c     # 把“最新的”远程仓库版本拉到暂存区
git restore hello.c        # 把暂存区中的文件拉回到工作区

好了, 又回来了

但是!如果不幸手抖,来了, commit了 !

查看log,发现。。。

不用慌,我们还是可以回退版本的,把本地仓库回退到之前的版本,在这里是“my first git”那个版本

git reset --hard "bbd9fd8887eb17eb6e4e113183517de895cbde0a"

查看一下log,这是原来的胡话没有了,但是,后面那一长串是什么鬼? 

后面的数字是在commit的时候,系统根据本机和时间,自动生成的唯一的版本码,表示该版本,指导这些码,就可以随时在远程仓库中回退任何版本。

如果最后还是要最新版本(和会长杠上了),也是可以的,前提只需要知道最新的版本码就可以了,但是后果。。。。

算了,不折腾了。

除了注册github用户,以上全部操作都可以直接在本地电脑中完成!

发布了6 篇原创文章 · 获赞 0 · 访问量 191

猜你喜欢

转载自blog.csdn.net/aimxu/article/details/104913306