Ubuntu| 学习使用Git和Gitee

参考内容:

视频同步笔记:狂神聊Git

Git - Book

ubuntu20.04配置git_良月123的博客-CSDN博客_ubuntu配置git


目录

什么是版本控制

Git是分布式版本控制工具

下载Git

配置Git

查看Git配置信息

Git的基本理论

三种状态

工作目录、暂存区域以及 Git 仓库

基本的 Git 工作流程

Git项目搭建——本地仓库搭建

Git文件操作

文件的四种状态 

查看文件状态

跟踪新文件

提交文件

忽略文件

使用Gitee码云

SSH公钥

生成公钥

复制公钥

上传公钥

检测是否畅通

创建仓库

测试


什么是版本控制

版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。

  • 实现跨区域多人协同开发

  • 追踪和记载一个或者多个文件的历史记录

  • 组织和保护你的源代码和文档

  • 统计工作量

  • 并行开发、提高开发效率

  • 跟踪记录整个软件的开发过程

  • 减轻开发人员的负担,节省时间,同时降低人为错误

简单说就是用于管理多人协同开发项目的技术。

Git是分布式版本控制工具

Git是目前世界上最先进的分布式版本控制系统。

特点:所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。

优缺点:由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。

下载Git

Git官网https://git-scm.com/

选择所需版本,打开终端输入对应命令,进行下载。

下载完成后:

$ git

配置Git

安装Git后,首先要做的事情是设置自己的用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远地嵌入到了我们的提交中:

$ git config --global user.name "填写名称"
$ git config --global user.email "填写邮箱"

对每一个项目只需要做一次这个设置。

如果你传递了--global选项,则Git将总是会使用该信息来处理你在系统中所做的一切操作;如果你希望在一个特定的项目中使用不同的名称或邮箱,你可以删除命令中的--global选项

查看Git配置信息

查看所有配置信息

$ git config --list

查看系统设置的配置

$ git config --system --list

查看用户设置的配置

$ git config --global --list

所有与Git相关的配置文件,其实都保存在计算机本地。因此,可以直接编辑配置文件。

用户配置文件路径:/home/用户名/.gitconfig

系统配置文件路径:暂时没找到

苯人目前只在仓库里找到了系统配置文件。。。

Git的基本理论

三种状态

现在请注意,如果你希望后面的学习更顺利,请记住下面这些关于Git的概念。 Git有三种状态,你的文件可能处于其中之一: 已提交(committed)已修改(modified)已暂存(staged)

  • 已修改表示修改了文件,但还没保存到数据库中。

  • 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

  • 已提交表示数据已经安全地保存在本地数据库中。

这会让我们的Git项目拥有三个阶段:工作区、暂存区以及Git仓库目录。

工作目录、暂存区域以及 Git 仓库

工作区 是对项目的某个版本独立提取出来的内容。这些从Git仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。

暂存区 是一个文件,保存了下次将要提交的文件列表信息,一般在Git仓库目录中。

Git仓库目录 是Git用来保存项目的元数据和对象数据库的地方。 这是Git中最重要的部分,从其它计算机克隆仓库时,复制的就是这里的数据。

基本的 Git 工作流程

  1. 在工作区中修改文件。

  2. 将你想要下次提交的更改选择性地暂存,这样只会将更改的部分添加到暂存区。

  3. 提交更新,找到暂存区的文件,将快照永久性存储到 Git 目录。

如果 Git 目录中保存着特定版本的文件,就属于 已提交 状态。如果文件已修改并放入暂存区,就属于 已暂存 状态。如果自上次检出后,作了修改但还没有放到暂存区域,就是 已修改 状态。

Git项目搭建——本地仓库搭建

创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库。

1、创建全新的仓库

在当前目录新建一个Git代码库:

$ git init

执行后可以看到多出了一个隐藏目录.git,关于版本等的所有信息都在这个目录里面。

2、克隆远程仓库

克隆一个项目和它所有的版本信息:

$ git clone https://gitee.com/< >
 

Git文件操作

现在我们有了一个 真实项目 的 Git 仓库,并从这个仓库中检出了所有文件的 工作副本。 通常,你会对这些文件做些修改,每当完成了一个阶段的目标,想要将记录下它时,就将它提交到仓库。

请记住,你工作目录下的每一个文件都不外乎这两种状态:已跟踪未跟踪已跟踪的文件是指那些被纳入了版本控制的文件,在上一次快照中有它们的记录,在工作一段时间后, 它们的状态可能是未修改,已修改或已放入暂存区。简而言之,已跟踪的文件就是 Git 已经知道的文件。

工作目录中除已跟踪文件外的其它所有文件都属于未跟踪文件,它们既不存在于上次快照的记录中,也没有被放入暂存区。 初次克隆某个仓库的时候,工作目录中的所有文件都属于已跟踪文件,并处于未修改状态,因为 Git 刚刚检出了它们, 而你尚未编辑过它们。

编辑过某些文件之后,由于自上次提交后你对它们做了修改,Git 将它们标记为已修改文件。 在工作时,你可以选择性地将这些修改过的文件放入暂存区,然后提交所有已暂存的修改,如此反复。

文件的四种状态 

  • Untracked:未跟踪,即未被纳入版本控制的文件。

  • Unmodified:文件已入库但未修改,即版本库中的文件快照内容与文件夹中完全一致。

  • Modified:文件已修改,仅仅是修改,并没有进行其它的操作。

  • Staged:暂存状态。

查看文件状态

查看所有文件状态

$ git status

查看指定文件状态

$ git status [filename]

跟踪新文件

跟踪指定文件,即添加该文件到暂存区:

$ git add [filename]

跟踪所有文件,即添加所有文件到暂存区:

$ git add .

说明:git add命令使用文件或目录的路径作为参数;如果参数是目录的路径,该命令将递归地跟踪该目录下的所有文件。 

提交文件

提交暂存区中的内容到本地仓库 -m 提交信息:

$ git commit -m "消息内容"

忽略文件

一般我们总会有些文件无需纳入Git的管理,也不希望它们总出现在未跟踪文件列表。通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。在这种情况下,我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件的模式。此文件有如下规则:

  • 忽略文件中的空行或以井号(#)开始的行将会被忽略。

  • 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,...})代表可选的字符串等。

  • 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。

  • 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。

  • 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。

#         #为注释

*.txt     #忽略所有以.txt结尾的文件

!lib.txt  #但lib.txt除外

/temp     #仅忽略项目根目录下的TODO文件,不包括其它目录temp

build/    #忽略build/目录下的所有文件

doc/*.txt #忽略doc/notes.txt但不包括doc/server/arch.txt

使用Gitee码云

Gitee - 基于 Git 的代码托管和研发协作平台https://gitee.com/

登录官网,注册账号。

SSH公钥

设置本机绑定SSH公钥,实现免密登录。

生成公钥

$ ssh-keygen -t rsa

复制公钥

$ cd ~/.ssh
$ vim id_rsa.pub

上传公钥

1、选择设置

2、选择安全设置 >> SSH公钥

3、选择SSH公钥 >> 添加公钥

  • 标题栏中填写自己想要的标题
  • 公钥栏中粘贴之前复制的公钥

检测是否畅通

$ ssh -T git@git.oschina.net

看见类似内容即为成功。

创建仓库

在Gitee上创建一个仓库,复制该仓库的地址。

测试

创建一个本地仓库,成功后进入新的路径,然后创建一些测试文件,文件内容随意。

$ git init mytest
$ cd mytest
$ vim test.txt

通过Git把测试文件添加到暂存区中,再进行提交。

$ git add test.txt
$ git commit -m "create a new file"

将本地仓库提交到Gitee。

$ git remote add origin https://gitee.com/< >
$ git push origin master

完成。

可能出现的问题:

$ git pull --rebase origin master

再次提交:

$ git push origin master

如果更换了网上的仓库url地址,使用如下命令查看和更改:

$ git remote -v
$ git remote set-url origin https://gitee.com/< >
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值