整合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与wingIDE(代码下载)

保存后,不要急着导入项目,先去某目录下初始化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与wingIDE(代码下载)

如图所示,第一行是被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了,虽然它真的不是一般的卡……

上一篇:thinkPHP四种URL访问方式(二)


下一篇:[刷题]算法竞赛入门经典(第2版) 5-11/UVa12504 - Updating a Dictionary