脚踏实地学习Git

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

 

  • git是什么?

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

  • git,gitub, gitLab的区别

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

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

  • git的使用
  1. 安装git工具

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

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

      sudo dnf install git-all

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

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

  1. 注册gitub

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

  1. 配置gitub
  1. 设置git的user name 和email

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

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

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

  1. 检查是否存在SSH Key

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

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

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

  1. 输入以上命令,然后3个回车
  2. 获取SSH Key,执行命令:cat id_rsa.pub
  3. Gitub添加SSH Key
  4. 登录gitub,然后点击用户头像,选择setting-->SSH and GPG keys-->new SSH key-->取个名字,把之前拷贝的秘钥复制进去,添加就好啦。
  5. 验证和修改

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

ssh -T [email protected]

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

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

        git clone项目地址https url

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

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

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

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

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

git commit -m  "备注信息"

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

git push

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

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相关知识,通过这些又拓展了软件相关的知识,扩宽了我的知识面,再次感谢!

Guess you like

Origin blog.csdn.net/Linuxprobe18/article/details/121507657
Git