详解linux下qt中使用git

前言

在代码管理过程中,我们基本都要使用git,但我在使用qt的过程中,并没有找到特别详细的配置说明,所以特地写一篇博客记录一下,在本篇博客中,你也可以了解到git的基本原理和用法。

本篇讲解在linux端,如何在qt中使用git,windows端请看链接

链接:详解windows下qt中使用git


环境

  • linux(ubuntu20.0.4,注意:全程是root权限
  • qt5.12.12
  • git随意版本(直接在官网下载即可)
  • 远程仓库(我是用的是github,觉得慢的可以用gitee)

首先说一下思路:(linux和windows思路相同)

  1. 下载安装git

  2. 登录git

    (git准备完毕)

  3. 注册一个github账号(注册账号的过程不演示了,这个比较简单)

    注意:这里github用户名和git用户名需要一致

  4. 创建一个仓库

    (远程仓库准备完毕)

  5. 通过git生成ssh公钥,将绑定到github

  6. 建立本地仓库,并用commit提交

  7. 建立远程连接,用push推送(需要先提交到本地,才能push到远程)


详细步骤:

一、安装git

  1. 输入git检测是否安装
git
  1. 安装git(centos用yum安装)
apt install git -y

这里我报错了

详解linux下qt中使用git_第1张图片

  1. 根据提示,输入下面命令更新一下qpt下载源
apt-get update

再次apt install git -y进行下载

二、登录git

  1. 绑定git账号(用户名,邮箱是自定义的)

注意:这里github用户名和git用户名需要一致

git config --global user.name "github用户名"
git config --global user.email "github绑定的邮箱"

image-20220725112020176

  1. 到这里git配置完毕,我们可以正常使用git clone克隆github上的代码了,以下是我随便找的一个仓库当做测试代码
git clone https://github.com/duilib/duilib.git

三、注册一个github账号

(注册账号的过程不演示了,这个比较简单)

链接:GitHub使用教程(一)-申请GitHub账号

四、创建一个仓库

创建仓库的过程也很简单,下面这篇博客供不会建库的新手进行参考

链接:Github 创建仓库以及基础命令的使用

我这里建了一个仓库,给大家进行演示

详解linux下qt中使用git_第2张图片

这里我要进行一点说明,目前默认建的库默认分支都是main,但大多数人都喜欢用master分支,我使用main分支上传时出错,不知道为什么,以下都使用master分支

五、通过git生成ssh公钥,绑定到github

  1. 在git中生成公钥,配置公钥的目的是避免每次push到远程仓库的时候都要输密码
ssh-keygen -t rsa -C "github绑定的邮箱"

详解linux下qt中使用git_第3张图片

  1. 查看公钥(里面的内容全部都是)
cat /root/.ssh/id_rsa.pub
  1. 将公钥绑定到github

详解linux下qt中使用git_第4张图片

详解linux下qt中使用git_第5张图片

详解linux下qt中使用git_第6张图片

  1. 测试git与github是否连接成功
ssh -T git@github.com

这里的命令是固定的,因为已经通过公钥与github进行了绑定

image-20220725115140761

六、建立本地仓库,并用commit提交

建立仓库的方式有很多种,我先用代码来演示主要思路

首先在项目所在文件夹下打开命令行窗口,在哪个文件夹下输入命令就相当于把该文件夹当做本地仓库,以git-demo项目为例

详解linux下qt中使用git_第7张图片

//初始化该文件夹为仓库
git init
//将当前文件夹下的所有文件添加到仓库
git add .
//进行一次本地提交(本地提交后才能push到远程仓库)
git commit -m "first commit"

详解linux下qt中使用git_第8张图片

这样,本地仓库就创建完毕。之所以先介绍代码思路的原因,是想把git的完整思路呈现出来。

本地仓库创建完毕

ls -a

使用ls -a命令查看当前文件夹下生成了一个隐藏文件.git,有这个文件就说明当前文件夹是一个本地仓库,删掉它,本地仓库也就删掉了

image-20220725141636018


代码的方式给新手同学来说就是很繁琐,下面介绍一下在qt中新建程序的时候就自动创建本地仓库

  1. 新建程序git-demo2,在创建项目时,就将项目加入git管理,这样本地仓库就会自动创建

详解linux下qt中使用git_第9张图片

查看git-demo2文件夹,自动生成了.git文件,这相当于编译器帮我们完成了上面的代码

image-20220725142101764

如果你的项目已经创建完了,想在qt中使用图形界面创建本地仓库

工具->git->Create repository->open

详解linux下qt中使用git_第10张图片

这样也可以快速的创建本地仓库,本地仓库创建后,该项目就被加入了git管理,项目名会出现master字样

详解linux下qt中使用git_第11张图片


之后修改完代码,我们为了方便,直接在编译器中执行commit操作

工具->git->Local repository->commit

详解linux下qt中使用git_第12张图片

至此本地仓库操作完毕

注意:现在本地仓库commit后才能push到远程仓库

七、建立远程连接,用push推送

代码演示(依然是在项目源码所在的文件夹那里打开命令行):

git remote add origin 远程仓库路径
git push -u origin master

远程仓库路径我们选ssh的,我们之前创建公钥就是为了这个。其中origin是指这个连接的名字,可自定义,但一般都用origin,剩下的代码不用改变

详解linux下qt中使用git_第13张图片

推送成功

详解linux下qt中使用git_第14张图片

测试的时候发现有的时候会push失败,失败的话把仓库删了,重建一遍。

git init
git add .
git commit -m "first commit"
git remote add origin 仓库路径
git push -u origin master

刷新代码仓库,将分支切换到master

详解linux下qt中使用git_第15张图片

因为github上默认分值为main,而本地默认为master,所以才出现了多分支状况,用户可根据自身需要合并分支,或者将main改为master。我在测试的时候发现比较繁琐,且出现不少问题,就不演示了。


连接远程仓库的操作不好在qt中进行,所以连接还在代码中操作

之后修改完代码,直接在编译器中执行push操作(记住push前本地肯定是要有一次commit的)

工具->git->remote repository->push

详解linux下qt中使用git_第16张图片

push后,编译器会输出提示


在测试过程中,我也出现了一些问题,读者在出现问题时不要慌,按照我的步骤,即使出错了,重新配一次基本都成功了

最后附上一些git可能能用到的基础命令:

绑定git账号

git config --global user.name "github用户名"
git config --global user.email "github绑定的邮箱"

通过git生成ssh密钥

ssh-keygen -t rsa -C "github绑定的邮箱"

测试与github是否ssh连通

ssh -T git@github.com

提交代码(先提交到本地,再同步到远程)

git init
git add .
git status
git commit -m "first commit"
git remote add origin 仓库路径
git push -u origin master

删除本地仓库:直接删除当前目录下的.git文件即可

查看远程仓库

git remote

删除远程仓库

git remote rm origin

查看提交记录

git log

克隆仓库

git clone 仓库路径 本地文件名

码字不易,如果这篇博客对你有帮助,麻烦点赞收藏,非常感谢!有不对的地方,可以评论区交流。

你可能感兴趣的:(git,qt,linux)