Windows XP 下如何使用Qt Creator中的Git版本控制功能
原文地址:http://www.qtcn.org/bbs/simple/?t16960.html
Qt Creator是针对Qt应用开发平台专门设计的IDE开发工具,集成了很多功能,分别有windows、Linux、Mac版本。对于那些经常使用Qt的开发者,就不多介绍了。下面讲讲如何在Qt Creator中使用版本控制,Qt Creator中可以选择Git或是Subversion来进行版本控制,我选择Git,为什么?你可以看看这两篇文章<<活灵活现用Git-基础篇>>和<<活灵活现用Git-技巧篇>>,如果你早就熟知Git,快走吧。
这里有几个前提要注意:
1 我们是在Windows下,但Git最初是在Linux下诞生的(大神),好在已有热心的开发者制作了针对Windows的安装包,目前已经几个类似的开源项目,都是将Git迁移到Windows来的,这里有个不错的,而且是http://git-scm.com/上钦点的,下载地址是msysgit,下载后直接安装,全部默认,当然如果你不在乎安装路径的话,完成后,别忘了设置PATH路径,加入“Git安装目录\bin”。
2 如果你是在本机下或是在公司内部环境中使用Git,具体的环境搭建请上网查阅。这里我们的模式是使用已有的Git托管服务,然后在本地开发,并同步到托管服务器上。托管服务很多啦,像SourceForge、Google Code,但好像都是svn的,Git的比较好的有GitHub,注册后有300M的免费空间,掏钱则可以换得更大的空间和更多的服务,赶快去吧。
如果你已经安装好msysgit并且开通了GitHub的托管服务,就往下继续吧。
3 设置SSH公钥,注意:这一步的正确配置非常重要,我们至少得有一个SSH公钥才能连接并操作Github或其他repo点上的项目。打开Git Bash,这里我们要配置本地与github.com之间的SSH公钥,
首先,请输入:ssh-keygen -C "你的email地址" -t rsa ,确定回车键连续4次,不管中间要求输入其他东西。该命令将生成一对非对称的公\私密钥,默认它们被存储在
XP/2003用户:c:\Documents and Settings\登陆名\.ssh
Vista用户: c:\Users\登陆名\.ssh
该.ssh文件夹下面,密钥放在id_rsa文件里面,不用理会它;SSH公钥放在id_rsa.pub里面,请用文本编辑器打开它,复制里面所有的字符。假定此时的你已经注册了Github用户,在账号管理account页面,有个大大的“SSH Public Keys”栏目,请点击“add another public key”,Title可空(默认值为email)或者任意,直接黏贴刚才复制的字符在Key文本域里面,最后点击Add Key!
4 SSH成功创建后,在Github网站上创建一个新的项目,创建新的项目/ Create a New Repository,比如创建一个god的项目,记住你看到的Your Clone URL:git@github.com:ynshisss/god.git ,ynshisss是我的用户名,“/”后是我的项目名称“god”。Okay,回到刚才的DOS窗口,我们要设置全局用户名称以及Email以方便Git知道你是谁,分别输入:
git config --global user.email “你的email地址”
git config --global user.name “你的名称”
其实不严格来说,这一步可忽略,它并不影响以后你对项目的各种操作行为,只是让Git记录是由谁在执行操作。本人愚见认为在多人的团队开发过程中同一个项目用同一个SSH公钥的时候可见效果。
5 我们先在本地建个Git仓库用来存放你的项目,在D:\下新建名为“God”的文件夹,然后cd到D:\God\目录下,
键入>git init 来系统初始化当前的Git仓库目录
键入>touch readme 用touch命令创建名为readme的文件
键入>git add readme 把文件readme加入git的版本控制
键入>git commit –m ‘add file readme’提交新版本至git仓库
键入>git remote add origin git@github.com:ynshisss/god.git 在本地为远程服务器建立一个名为origin的分支,以后你要提交本地更新到远程服务器时,就可以用origin别名替代“git@github.com:ynshisss/god.git”
键入>git pull origin master 把远程服务器master分支的内容更新至本地分支(默认情况下,你没有创建新的分支,所以远程和本地都只有一个主分支,名称都是master,具体分支的用法请参考Git官方手则)
键入>git push origin master 把本地master分支所有的修改提交至远程git服务器上的master分支
完成了以上操作后,你可以访问下GitHub上你的项目,看看god下是不是有个文件readme
6 打开Qt Creator,在新建的本地Git仓库目录即D:\God\下新建一个Qt的项目,注意你的项目一定要在Git仓库目录下,否则Qt Creator不能启用版本控制,设置Tools—>Options...-->Git,启用环境变量,确保路径能找到git.exe。
选择Window—>Output Panes -->Git,打开Git提示信息输出窗口,随便编辑一下你的项目,如修改下main.cpp,然后
选择Tools—>Git-->Commit命令提交修改,如果信息提示“git status -u命令错误或无效”说明PATH变量找不到git.exe,重新设置环境变量,commit是将更新提交到本地仓库,此时会打开一个提交窗口,要你输入提交信息,所有信息都要输入。
完成提交后选择Tools—>Git-->Push命令将本地版本同步到服务器,如果信息提示“time out”,这是什么问题呢?
如果此时我用Git Bash环境,cd到D:\God\下,键入>git push,不成功,看看提示信息,大概是说你想同步到哪里的分支去,如果是针对当前的分支可设置config...,好吧我们再键入>git push origin master,成功了,原来是因为Qt Creator中的Push命令找不到远程服务器地址和同步的分支,怎么办,刚才提示了说你可以用config设置全局变量来实现,但更好的做法是修改D:\God\.git\config文件,打开它,看看有些什么:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = git@github.com:ynshisss/god.git
fetch = +refs/heads/*:refs/remotes/origin/*
在config文件中加入:
[branch "master"]
remote = origin
merge = refs/heads/master
现在当你使用>git push命令时,同步的是master主分支,它的远程remote则是origin,也就是git@github.com:ynshisss/god.git。
再次使用Qt Creator来同步吧,更新远程到本地则使用push (pull),更多Git命令请查阅官方手则。
Windows XP 下如何使用Qt Creator中的Git版本控制功能的更多相关文章
- QT creator中使用opencv
最近要用到opencv做图像方面的东西,网上很多是用VS加opencv,但自己对VS不怎么喜欢,想用QT Creator.在网上搜索了很多资料,终于花了一天的时间,在QT Creator上能使用ope ...
- Qt Creator中的3D绘图及动画教程(参照NeHe)
Qt Creator中的3D绘图及动画教程(参照NeHe) http://blog.csdn.net/cly116/article/details/47184729 刚刚学习了Qt Creator,发 ...
- Qt在VS2013或Qt Creator 中的控制台输出方式设置
首先值得注意的是:在写程序的时候,项目保存路径不要涉及到中文,否则容易出错! 一.Qt在VS2013中的控制台输出方式: 注意:这里是而不是Qt Application. 然后直接点击finish即可 ...
- Qt Creator中,include路径包含过程(或如何找到对应的头文件)
Qt Creator中,include路径包含过程(或如何找到对应的头文件) 利用Qt Creator开发程序时,需要包含利用#include来添加头文件. 大家都知道,#include <&g ...
- 如何在Qt Creator中导入图标资源
本文主要描述如何在Qt Creator中创建资源文件,并的打入导入图标文件. 查看图标资源文件时,可以在项目的工程文件上鼠标单击右键-Open With-资源编辑器,效果如下图所示: 在项目的工程文件 ...
- WPF 程序在 Windows XP 下报错:The image format is unrecognized.
最近做的一个 WPF 程序,在 Windows 7 或以上版本的系统中,测试都很正常,在 Windows XP 下运行时一开始就报了个错误: { "ClassName" : ...
- Qt Creator中使用qss对界面美化没有作用(效果)的问题
最近在研究qt界面开发,发现使用qss对界面进行美化后效果不错,要比mfc效率高很多,美化效果也很出色.但是在使用qss文件对界面控件进行美化的过程中遇到了个很奇葩的问题,困惑了我好久,今晚又遇到了, ...
- Qt Creator 中的插件Plugin, 区分说明。。。
Qt Creator 中可以创建 三中类型的插件Plugin: 1.用的最多的,派生自QGenericPlugin类: 在新建Library, Plugin类型工程中,新建. 调用使用QPlugi ...
- Qt creator中配置opencv win7 64bit
配置方法的原文来自https://www.librehat.com/qt-5-2-vs2012-opencv-2-4-7-dev-environment-setup-tutorial/. 补充,在张静 ...
随机推荐
- BootStrap自定义轮播图播放速度
$('.carousel').carousel({ interval: 3000 });
- <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalabl ...
- centosifcfg-eth0文件内容为空
虚拟机安装好CentOS 6系统后,发现ip在每次重启后都会还原,用ifconfig查看是有eth0网卡的(也有可能只有回环网卡lo),于是查看eth0网卡配置文件,发现在 /etc/sysconfi ...
- 重磅!挑战Oracle,华为将开源 GaussDB 数据库
来源:中关村在线,https://dwz.cn/nHNSOTeN 有消息称在正在进行的鲲鹏计算产业论坛上,华为宣布将开源其GaussDB数据库. GaussDB数据库是今年5月15日华为公布的分布式数 ...
- javascript中数组的应用总结
最近在总结javascript的相关应用,今天对js中的数组部分进行归纳总结,以便在以后的工作中有所参考. 1.在js中数组的定义方式有两种: var a = [1,2,3,4]; var b = n ...
- python3_OS模块
一.什么是os模块 os模块提供了多数操作系统的功能接口函数.当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在python编程时,经常和文件.目录打交道,所以离不了 ...
- mysql修改root密码和设置权限 转摘:http://www.cnblogs.com/wangs/p/3346767.html
整理了以下四种在MySQL中修改root密码的方法,可能对大家有所帮助! 方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR ' ...
- 快速加载testNG 的方法
总共两步 首先建包建类建函数,这个是所有项目共同特点,不多少 1.在程序里写@Test,然后就会报错,光标放到那,然后就会有Add TestNG library的提示,点击就会将TestNG的libr ...
- Qt pro使用sql之类的需要添加的模块
举个栗子,当要使用QSqlQuery 的时候需要在pro中添加Qt +=sql 然后在.h里面#include<QSqlQuery>即可使用sql. 同理要使用media或者net的时候只 ...
- CascadeCNN人脸检测结构
模型的结构大致由图可以完整展现,三个分类是否人脸的12.24.48net,再加上三个用于修正预测框的分类网络: 这三个分类是否人脸的网络,结构逐渐变复杂, 由上图可以看出,前2阶的网络都非常简单,只有 ...