整合git与wingIDE(代码下载)
通过多次被IDE的闪退崩溃甚至无教程调教后,我深刻认识到开发wingIDE这种IDE的小公司,在很多功能方面就是个坑……
所以,如果你的电脑比较好,运行pycharm无压力,建议略过此文,直接去用pycharm,省了下面的糟心事。
当然,我是属于电脑很烂,用pycharm时一点右键就会整个电脑卡死的那种,只能委曲求全用wingIDE,平时练习写写还好,这次需要做严格版本控制时,傻了眼了。
官方主页上关于版本控制的教程是两段分辨率超低的视频,还得FQ去看,然而看了并没有多少用处,因为他只是告诉你有版本控制可以用,以及版本控制时可以随意commit和merge,却并没有告诉你如何把版本控制工具整合在里面。
就连文字教程都没有啊啊啊啊!于是我折腾一个小时,弥补了这个国内外市场上的教程空白。
言归正传,第一步自然是先在自己电脑上把版本控制工具下载好并安装完毕,我这里用的是git
接下来,若要经常进行版本控制,建议先将常用的版本控制工具设置到主菜单栏里。
操作步骤:edit->preferences->Version control->git(我用的git所以这里选的git)
在active里选择always active,然后在git executable里填入git安装目录下的git.exe的文件位置。并且勾选use --porcelain选项,这个选项可以理解为使用一些高级功能。

保存后,不要急着导入项目,先去某目录下初始化git。
步骤如下:新建某个文件夹,右键选择gitbash here,然后在git命令行窗口里输入git init
然后创建你的远程仓库,在git命令行客户端里输入git remote add pb git@git.oschina.net:……为保隐私省略,值得注意的是,远程仓库的git地址一定要是ssh地址,千万不要是https,这是为了后期免输密码考虑的。add成功后输入
git remote -v查看是否显示正确,注意fetch和push最好都是ssh形式,若某个不是,请自行查阅git help更改传输方式
然后创建你的项目的公钥和私钥,这步很重要,我之前就是因为没有正确处理好公钥和私钥的设置,所以ide里一直未能成功。
在git命令行窗口输入 ssh-keygen -t rsa -C "youremail@email.com"
回显如下:
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa):<----这部要输入保存key的目录位置,建议直接在这步敲回车
/c/Users/Administrator/.ssh/id_rsa already exists.
Overwrite (y/n)? y <-----若已存在,敲y覆盖
Enter passphrase (empty for no passphrase):
Enter same passphrase again: <------输入密码,可以输密码,也可以敲回车
Your identification has been saved in /c/Users/Administrator/.ssh/id_rsa.<-----出现这几行就是成功了
Your public key has been saved in /c/Users/Administrator/.ssh/id_rsa.pub.
The key fingerprint is:<-----为保隐私,省略下面的
然后立即去那个保存key的目录里把公私秘钥保存到项目的目录下,以防万一
然后把公钥用editplus等文本编辑器打开,把内容粘到项目托管网站的公钥管理处
接下来检验一下是不是正确的配置了公钥和私钥
在git的命令行窗口输入 ssh -T git@git.oschina.net
Welcome to Git@OSC, Anonymous!显示这行就证明你已成功
git的地方就配完了,然后我们继续回到ide,新建项目,然后add existing directory,选择刚才被init过的的那个目录
然后点击主菜单上的git->switch 如果你只是想获取分支的话,主目录可能也需要操作这个步骤,目前没试过,大家可以试试

如图所示,第一行是被git init的目录,第二行是分支名,switch branch后,点击主菜单上的git->pull branch changes
别问我为什么不是fetch ,我也不知道,反正fetch就是得不到文件
pull的填写内容和switch的内容差不多,填写时别弄错就可以了。
然后点击pull按钮就大功告成。
中途如果有什么问题的话可以观察下output的输出内容,都会有相应提示,无非就是以下几种:
1、你的目录未初始化所以找不到.git文件
2、你的公私钥没有配置正确所以提示无权限
3、你的git账号权限确实不对,所以提示无权限
4、你用了https方式的git地址进行传输所以提示无权限或者找不到/dev/tty
5、你的分支名填错所以提示无分支
6、output一片空白,这是很可怕的,很可能是你git配置错,也可能是git配置和wingIDE配置的过程中哪部操作错误,得细细排查,用fetch也会遇到这情况
大概就上面那些,有其他问题可以留言问我
整合过程里还遇到两个wingIDE的bug:
1、在已有一个git项目时使用open project from file或者add另一个git项目地址的目录,整个IDE就会卡死
2、删除所有项目配置变量和初始化过的git目录,在上级目录中init另外的目录并进行new project操作时,新项目会默认为原git项目,且无视原先已删除目录,代码路径继续指向已删除目录,真是无语,不得不新建项目
最后我再次强烈要求wingIDE开源,以方便各位pythoner改软件bug和进行相关配置
再不开源估计python常用的ide市场里只剩pycharm了,虽然它真的不是一般的卡……
整合git与wingIDE(代码下载)的更多相关文章
- Jenkins进阶-Git多仓库代码下载编译 (13)
多仓库代码部署这个问题其实在13年做配置管理的时候,就遇到过这样的问题,而最近公司可视化图项目也需要多个仓库代码需要同时下载进行编译,由于仓库之间的代码编译有依赖关系,所以必须同时下载下来按照顺序进行 ...
- openwrt git 代码下载地址
openwrt 各个版本代码下载 trunk:git clone git://github.com/openwrt/openwrt.git 15.05 (Chaos Calmer)git clone ...
- Dubbo与SpringBoot整合流程(从实例入手,附代码下载)
场景 Dubbo环境搭建-管理控制台dubbo-admin实现服务监控: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10362 ...
- AndroidStudio中利用git下载github或者git.oschina的代码时报错:repository test has failed解决方法
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 微博:http://weibo.com/mcxiaobing AndroidS ...
- 【原】无脑操作:Gitblit服务器搭建及IDEA整合Git使用
背景:虽然有GitHub.GitLab这样强大的Git仓库,但是涉及私有Git库要收费,所以自己动手搭建免费的用用 环境:windows 7 旗舰版.JDK 1.8.IDEA 2017 ------- ...
- IDEA整合GIT所有操作
IDEA整合GIT操作 1.1 配置Idea集成Git 1.2 在使用SSH key 创建公钥私钥,上传公钥到github (1).点击开始菜单-->所有程序--->git选择 Git B ...
- 3-Gitblit服务器搭建及IDEA整合Git使用
背景:虽然有GitHub.GitLab这样强大的Git仓库,但是涉及私有Git库要收费,所以自己动手搭建免费的用用 环境:windows 7 旗舰版.JDK 1.8.IDEA 2017 ------- ...
- 07.深入浅出 Spring Boot - 数据访问之Mybatis(附代码下载)
MyBatis 在Spring Boot应用非常广,非常强大的一个半自动的ORM框架. 代码下载:https://github.com/Jackson0714/study-spring-boot.gi ...
- 15分钟学会使用Git和远程代码库
git是个了不起但却复杂的源代码管理系统.它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作.让我们诚实一记吧:Git是复杂的,我们不要装作它不是.但我仍然会试图教会你用(我的)基本 ...
随机推荐
- TCP建立连接的三次握手过程
TCP是因特网中的传输层协议,使用三次握手协议建立连接,下面是TCP建立连接的全过程. 上图画出了TCP建立连接的过程.假定主机A运行的是TCP客户程序,B运行的是TCP服务器程序.最初两端的TCP进 ...
- Java:多线程
创建线程的方式有两种: 第一种:使用线程类Thread或者继承它的子类创建线程对象 第二种:定义接口类实现接口Runnable创建线程对象 多线程的好处:可以整合资源,提高系统资源的利用率 多线程中提 ...
- iOS:核心动画之基本动画CABasicAnimation
基本动画,是CAPropertyAnimation的子类 属性说明: fromValue:keyPath相应属性的初始值 toValue:keyPath相应属性的结束值 动画过程说明: 随着动画的进行 ...
- 解决JVM最大内存设置问题
这里和大家讨论一下如何获得JVM最大内存,在命令行下用java-XmxXXXXM-version命令来进行测试,然后逐渐的增大XXXX的值,如果执行正常就表示指定的内存大小可用,否则会打印错误信息. ...
- linux 配置 wlan 连接
第一步,先确定你已经安装了无线网卡驱动.我的是 ath9k ,linux 内核不自带,现编译成模块 然后安装上.具体步骤请自行搜索 linux 编译内核 第二步,起用模块 modprobe ath9k ...
- Win XP 如何禁用屏保
如果你试过 “在桌面空白处点击右键-[属性]-[屏幕保护程序],选择[无],点击[确定]”后,当时是可以去掉屏保.但如果重启计算机或者从待机状态唤醒后,屏保依然会出现,那么你可以试试下面的方法. 首先 ...
- selenium如何做兼容性测试呢
selenium如何做兼容性测试呢. 现在selenium做自动化测试基本是web driver操作浏览器做操作,code中assert关键值,做判断. 具体执行2种 1.使用htmluint 来执行 ...
- Simple Factory vs. Factory Method vs. Abstract Factory【简单工厂,工厂方法以及抽象工厂的比较】
I ran into a question on stackoverflow the other day that sort of shocked me. It was a piece of code ...
- Setup Entity Framework Environment
http://www.entityframeworktutorial.net/EntityFramework5/setup-entityframework-environment.aspx Entit ...
- Gradle学习系列(一)
今天就开始学习Gradle构建了,听说很牛X.本篇内容就带领我初步窥探Gradle的世界. 1.什么是Gradle 相信之前都接触过用Ant或者Meavn进行项目的构建,两者各有千 ...