Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1507437
  • 博文数量: 1279
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 13084
  • 用 户 组: 普通用户
  • 注册时间: 2018-03-07 16:26
个人简介

Linux学习小标兵,专注Linux资讯分享,技术文章分享

文章分类

全部博文(1279)

文章存档

2023年(236)

2022年(285)

2021年(265)

2020年(248)

2019年(213)

2018年(32)

我的朋友

分类: LINUX

2021-11-25 22:30:08


从事IT行业的朋友们,不管是做开发,测试或者运维,肯定对git,gitub,gitLab工具都不陌生,它是我们日常工作必不可少的工具。今天就详细介绍git的使用,希望能够对你有所帮助。

(1) git是什么?

git是一个版本控制系统,可以回滚到你提交的任何版本,就好比提交毕业论文的时候,每次修改后都要保存一个版本,以防我们任何一个版本修改错误要改回原来的版本。

(2) git,gitub, gitLab的区别

git是一个工具,gitub是分布式在线版本控制系统,gitLab是gitub的私有版本。

现在应该对git是干什么的有一个初步的印象,下边就详细介绍下git在日常工作中是怎么使用、操作以及有哪些注意事项。

(3) git的使用

(1) 安装git工具

在开始使用 Git 前,我们需要将它安装在计算机上。 如果已经安装,最好将它升级到最新的版本。我们可以通过软件包或者其它安装程序来安装。

在linux系统上,如RHEL或Centos,我们可以执行如下命令:

sudo dnf install git-all

在Macos操作系统上,有多种安装git的方式,最简单的方法是安装 Xcode Command Line Tools,大家可以自行查阅适合自己的方法。

在windows系统上,我们可以在 Git 官方网站下载安装包然后安装。当然,另一种简单的安装方法是安装 GitHub Desktop。 该安装程序包含图形化和命令行版本的 Git注册gitub

(2) 注册gitub

需要用户输入用户名和密码注册一个gitub用户。

(3) 配置gitub

a. 设置git的user name 和email

设置git的username的命令:git config --global user.name 用户名

设置git的email的命令:git config --global user.email 邮箱

注:git config --list 查看当前Git环境所有配置,还可以配置一些命令别名之类的。

b. 检查是否存在SSH Key



我们可以先切换到~/.ssh目录下,然后执行ls查看是否有公钥文件,如下图所示:

c. 若没有,则执行以下命令生成:

ssh-keygen -t rsa -C “邮箱地址”

d. 输入以上命令,然后3个回车

e. 获取SSH Key,执行命令:cat id_rsa.pub

f. Gitub添加SSH Key

g. 登录gitub,然后点击用户头像,选择setting-->SSH and GPG keys-->new SSH key-->取个名字,把之前拷贝的秘钥复制进去,添加就好啦。

h. 验证和修改

可以执行如下命令查看gitub公钥是否添加成功:

ssh -T git@github.com

注:GitHub配置SSH Key的目的是为了帮助我们在通过git提交代码时不需要繁琐的验证过程,简化操作流程。

(4)将Gitub上的项目克隆到本地

git clone项目地址(https url)

(5)将本地工作区文件上传到本地Gitub服务器的暂存区,执行命令:

git add .(当前文件夹下的所有文件)

注:若要选择性上传自己工作区文件,可以在工作区建一个.ignore文件【vim .ignore】

然后将不需要上传的文件名或路径写在.ignore文件

(6)将本地服务器的暂存区的文件提交到本地的master分支,执行命令:

git commit -m "备注信息"

(7)将本地分支的文件上传到远程服务器,执行命令:

git push

(8)将远程文件更新到本地工作区,执行命令:

git pull

(8)查看自己做过哪些,执行命令:

git reflog


现在,你应该能完成所有 Git 基本的本地操作了-创建或克隆一个仓库、进行更改、暂存并提交这些更改、浏览仓库从创建到现在的所有更改历史。 接下来,我么介绍下提交更改过程中遇到冲突怎么解决。

(四)如何解决冲突

当两个(A,B)以上的人同时对同一个文件做操作后push到master,容易产生冲突,假如A先上传,那么这个时候B要去解决冲突,A只需在B解决完冲入后pull文件就可以。

两种方法:

(1)可以手动修改

(2)用Git的merge工具

(a)git mergetool

(b)输入a(弹出比较工具,可以添加,选择,修改自己需要的文件)

(c)然后按照正常上传文件的流程操作就好啦

以上是从git是什么,常用版本控制系统的区别,gitub的配置使用以及在使用过程中遇到冲突怎么解决这4个方面总结了git的基本知识点。当然还有跟深层次的应用,如:git分支,自定义git,git的迁移等等,有兴趣的可以自己去拓展。这些知识是我在接触linux相关知识的时候用到的,在这里要特别感谢《linux就该这么学》这本书,他带我领略linux相关知识,通过这些又拓展了软件相关的知识,扩宽了我的知识面,再次感谢!

阅读(366) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~