通过多次被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(代码下载)的更多相关文章

  1. Jenkins进阶-Git多仓库代码下载编译 (13)

    多仓库代码部署这个问题其实在13年做配置管理的时候,就遇到过这样的问题,而最近公司可视化图项目也需要多个仓库代码需要同时下载进行编译,由于仓库之间的代码编译有依赖关系,所以必须同时下载下来按照顺序进行 ...

  2. openwrt git 代码下载地址

    openwrt 各个版本代码下载 trunk:git clone git://github.com/openwrt/openwrt.git 15.05  (Chaos Calmer)git clone ...

  3. Dubbo与SpringBoot整合流程(从实例入手,附代码下载)

    场景 Dubbo环境搭建-管理控制台dubbo-admin实现服务监控: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10362 ...

  4. AndroidStudio中利用git下载github或者git.oschina的代码时报错:repository test has failed解决方法

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 微博:http://weibo.com/mcxiaobing AndroidS ...

  5. 【原】无脑操作:Gitblit服务器搭建及IDEA整合Git使用

    背景:虽然有GitHub.GitLab这样强大的Git仓库,但是涉及私有Git库要收费,所以自己动手搭建免费的用用 环境:windows 7 旗舰版.JDK 1.8.IDEA 2017 ------- ...

  6. IDEA整合GIT所有操作

    IDEA整合GIT操作 1.1 配置Idea集成Git 1.2 在使用SSH key 创建公钥私钥,上传公钥到github (1).点击开始菜单-->所有程序--->git选择 Git B ...

  7. 3-Gitblit服务器搭建及IDEA整合Git使用

    背景:虽然有GitHub.GitLab这样强大的Git仓库,但是涉及私有Git库要收费,所以自己动手搭建免费的用用 环境:windows 7 旗舰版.JDK 1.8.IDEA 2017 ------- ...

  8. 07.深入浅出 Spring Boot - 数据访问之Mybatis(附代码下载)

    MyBatis 在Spring Boot应用非常广,非常强大的一个半自动的ORM框架. 代码下载:https://github.com/Jackson0714/study-spring-boot.gi ...

  9. 15分钟学会使用Git和远程代码库

    git是个了不起但却复杂的源代码管理系统.它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作.让我们诚实一记吧:Git是复杂的,我们不要装作它不是.但我仍然会试图教会你用(我的)基本 ...

随机推荐

  1. jQuery RemoveAttr(checked)之后再Attr(checked)属性无效果的原因分析

    jQuery中attr()和prop()在修改checked属性时的区别 投稿:whsnow 字体:[增加 减小] 类型:转载   使用语句$.attr('checked',true),将复选框的属性 ...

  2. java多线程使用HibernateSession 时报 No session 的解决办法(转)

    服务端新开多线程使用HibernateSession 杜绝No session 新起的线程需要绑定Hibernate session,才能在新线程中使用事务和延迟加载等功能,否则会曝出no sessi ...

  3. iOS:实现MKAnnotation协议,在地图上设置大头针,点击显示具体的位置信息

    如何添加大头针(地标): 通过MapView的addAnnotation方法可以添加一个大头针到地图上 通过MapView的addAnnotations方法可以添加多个大头针到地图上 –(void)a ...

  4. warning:deprecated conversion from string constant to 'char *' 解决方案

    #include <iostream> using namespace std; int fuc(char *a) { cout << a << endl; } i ...

  5. Myeclipse 自定义代码自动格式化(ctrl+alt+F)

    打开如图界面:preference->java->code style->formatter下的edit... 如设设置java代码多长换行:

  6. PHP 投票练习

    重点:1.进度条的显示2.操作数据库<form action="chuli.php" method="post"> <?php include ...

  7. Linux之Samba的配置

    Samba的配置   对于linux与windows共享,和平共处,我们可以用Samba软件 Samba是一套免费的开源软件,可以在linux或其他类unix操作系统上实现windows域控制器,文件 ...

  8. arcgis javascript dojo

    一.为什么说ArcGIS API for JavaScript是构建于Dojo之上的? 1. 编写ArcGIS API for JavaScript的ESRI开发者使用Dojo来简化他们的开发过程,同 ...

  9. PDO数据库

    <?php //定义数据源$dsn = "mysql:dbname=testa;host=localhost"; //造PDO对象$pdo = new PDO($dsn,&q ...

  10. Android App接入微信开放平台注意事项

    一.Android第三方应用接入微信开放平台的注意事项: 1. 到微信开放平台官网申请正式的AppID(需通过审核),要填写包名.app签名的md5值.至于如何获取app签名信息,官方提供签名包apk ...