Qt Creator 中使用 Git / Github

Posted hebbely

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt Creator 中使用 Git / Github相关的知识,希望对你有一定的参考价值。

Github是目前最流行的代码仓库,通过 Qt Creator 可以很方便的访问 Github ,下面来看看如何配置。

1、下载并安装git

首先安装 Git(msysGit) 最新版是2.10.0下载地址 http://git-scm.com/downloads

或者 https://git-scm.com/downloads/win

这里下载的是32bit

安装很简单,请按图操作 

2、github注册

要托管到github,那你就应该要有一个属于你自己的github帐号,所以你应该先到github.com注册

① 打开浏览器

② 在地址栏输入github.com地址:

③ 填写用户名邮箱密码

④ 点击Sign up即可简单地注册

3、设置用户名、邮箱

安装完成后,打开 Git Bash,设置用户名邮箱,邮箱最好与github注册的邮箱一致,便于记忆。代码如下:

git config --global user.name "你自己的用户名"

git config --global user.email "你自己的邮箱"

配置完成后,我们可以再次输入,不包括名称,可以看到配置成功

4、生成密钥并设置

生成密匙,注意参数大小写并且不要设置密码(直接回车)。

ssh-keygen -t rsa -C"你自己的邮箱"

生成后的公匙文件在 C:\\Users\\用户名\\.ssh\\id_rsa.pub

打开密匙文件复制其中内容将该密匙添加到github  (Settings-> SSH and GPG keys-> new SSH key),然后添加公共密钥

 

为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

git推荐使用SSH协议的原因

使用SSH协议可以避免每次push输入密码。前提是账户里配置好SSH密钥。git@github.com开头的就是SSH协议。使用Https协议则会导致每次都输入用户名和密码。 

5、在GitHub中新建一个库

创建操作如图:

创建成功后会出现设置提示信息界面,会看到如下类似内容

6、配置Qt Creator的git设置

    打开工具/Tools-->选项/Options -->版本控制-->Git,在Prepend toPATH中设置Git的所在目录后确定并重启QtCreator

重新打开QtCreatorTools菜单就会看到Git项,选择 Create Repository..添加一个仓库

来到工程的目录下,右键-->“Git Bash Here”;或者“菜单-->“所有程序-->“Git-->“Git Bash”,输入工程目录“cd  /e/Windows7_share/Qt5.5/project/myStyle

输入"git init"代码仓库就创建了,继续输入“ls -al”就可以看到目录下有个.git文件夹。

并输入刚才 GitHub 的 SSH 地址信息(https://github.com/hebbely/QtDemo.git)

git remote add origin https://github.com/hebbely/QtDemo.git

git push-u origin master

这样就完成了第一次推送(push)。以后就可以直接在QtCreator中操作,如

7、git submodule

Git归并两种策略:递归章鱼

A.递归策略:当分支数只有两个的时候。 

B.章鱼策略:当分支数大于两个的时候。Git会自动选择归并的方法。

C.子树策略:是Git另一种归并方法。(submodule)

为工程添加子模块

 cd demo_project
 git submodule add git://github.com/felixge/node-mysql.git deps/mysql
 git submodule init
 git submodule update
# 提交更改

git submodule init and update 就可以直接获取依赖模块了

  git submodule init
  git submodule status

删除:

submodule的删除稍微麻烦点:首先,要在“.gitmodules”文件中删除相应配置信息。然后,执行“git rm –cached ”命令将子模块所在的文件从git中删除

下载的工程带有submodule

当使用git clone下来的工程中带有submodule时,初始的时候,submodule的内容并不会自动下载下来的,此时,只需执行如下命令

git submodule update --init --recursive

即可将子模块内容下载下来后工程才不会缺少相应的文件


 

8、参考资料

git基础

手把手教你使用Git

git submodule的使用

git submodule,解决依赖模块更新

以上是关于Qt Creator 中使用 Git / Github的主要内容,如果未能解决你的问题,请参考以下文章

如何使 Tools->Git->Push 在 Qt Creator 中工作

Qt Creator使用版本控制(创建项目时)

Qt Creator 项目和库的统包分发?

Qt Creator:未解析的外部符号

使用 qt-creator 将库项目链接到 qt 控制台/小部件项目

qt creator 中 ui文件 怎么用编译界面修改?