V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Feiox
V2EX  ›  Python

被 IDE 坑了差不多 5 个单位的开发人/时

  •  
  •   Feiox ·
    feiox · 2015-04-04 15:27:08 +08:00 · 7479 次点击
    这是一个创建于 3311 天前的主题,其中的信息可能已经有所发展或是发生改变。

    首先,同样一段代码,昨天正常,今天突然不能跑了。。。直接假死(感觉像被挂起了),然后把代码拷贝到另一个文件中再拷贝回来。。。。突然可以了

    其次,shift+F6 重构,竟然改了 virtualenv 虚拟环境中的包的内容。。。重装整个环境,又好了。代码一点没动。

    Python #%#$%#@&& PyCharm 我 !@#$%%@*^$^%

    初创团队,时间最关键啊 ~ 逼我再去重拾 Emacs 么 ~

    24 条回复    2015-04-06 10:29:39 +08:00
    twor2
        1
    twor2  
       2015-04-04 15:31:02 +08:00
    用的什么 IDE

    PYCHARM?
    Feiox
        2
    Feiox  
    OP
       2015-04-04 15:34:35 +08:00
    @twor2 对的。重构竟然重构进了安装的第三方包。。。想想也醉了。
    ThomasZ
        3
    ThomasZ  
       2015-04-04 15:42:24 +08:00
    版本控制是不是有人把个人相关的配置也上传了
    scys
        4
    scys  
       2015-04-04 15:44:33 +08:00
    用下 intellij 的 IDE 加 plus python 就可以了。
    我已经在上面跑了好几个环境,都没有问题。
    很奇怪,你用IDE重构会直接对 virtualenv 进行修改?
    onlyice
        5
    onlyice  
       2015-04-04 15:53:03 +08:00
    目测不是 PyCharm 的问题。。。
    ChiangDi
        6
    ChiangDi  
       2015-04-04 15:53:26 +08:00
    用 Emacs 重构就一条条搜索替换?这怎么能忍?
    Panic
        7
    Panic  
       2015-04-04 16:59:33 +08:00
    正版吗
    wph95
        8
    wph95  
       2015-04-04 17:12:43 +08:00
    你用pycharm的流程部署的virtualenv?
    还是在工程路径下 有个virtualenv?
    blacktulip
        9
    blacktulip  
       2015-04-04 17:46:58 +08:00
    初创团队,时间最关键啊 ~ 楼主还不去编码,上 V2EX 浪费时间干什么
    wuxqing
        10
    wuxqing  
       2015-04-04 17:51:55 +08:00
    你重构的时候可以选择源代码的目录
    qdwang
        11
    qdwang  
       2015-04-04 18:09:18 +08:00
    动态语言 重构 还是自己一条条过 比较好,安全第一。
    Feiox
        12
    Feiox  
    OP
       2015-04-04 18:11:38 +08:00
    @scys
    @wph95
    @wuxqing 如何选择。。我是把 venv 文件夹放在了项目目录之下。求指导。。。。
    wuxqing
        13
    wuxqing  
       2015-04-04 18:21:41 +08:00
    我记得重构的时候,会出现preview的选择界面,可以选哪些目录要重构
    jun4rui
        14
    jun4rui  
       2015-04-04 18:22:57 +08:00
    @Feiox 我用的idea,建立venv环境和Python项目是分开的啊,放在不同目录都可以,完全不会被影响啊。你去设置里面看看,我个人都是放在一个专门的目录做不同的venv环境
    ivanlw
        15
    ivanlw  
       2015-04-04 18:31:30 +08:00
    学习下Vim是一个不错的主意
    elvis_w
        16
    elvis_w  
       2015-04-04 19:12:45 +08:00
    原因是virtualenv数据 在代码目录里
    应该用Pycharm来管理virtualenv,还有重构时必须一条条的审阅重构记录
    nicai000
        17
    nicai000  
       2015-04-04 19:41:34 +08:00
    你说的东西看起来更是个人原因, 计算机最大的好处就是可重入, 不会有莫名其妙的潜规则, 不会莫名其妙不好用也不会莫名其妙好用, 我觉得也有避免"突然不能跑了, 突然又能用了"这样的认识.
    tidewind
        18
    tidewind  
       2015-04-05 01:08:37 +08:00
    我的建议是 提升commit频率,认真codereview
    roricon
        19
    roricon  
       2015-04-05 11:36:21 +08:00
    @Feiox 有几个方法,一个是放在 repo 路径之外,或者加入 .gitignore ,再或者用 virtualenvwrapper 把所有的 venv 放到一起管理。
    wph95
        20
    wph95  
       2015-04-05 13:12:08 +08:00
    @Feiox 你把venv放到项目路径里面 pycharm又不知道你的这个是virtualenv,默认把你当项目文件给重构了呗。。这个真不怪pycharm,怪你没去阅读pycharm的使用指南
    ---
    好了 吐槽完毕 说正规的解决办法
    我看楼上的人们都不是靠Pycharm吃饭的,Pycharm有对virtualenv的原生支持
    不知道你有木有注意到pycharm左边的文件树下面有个external libraries。说明pycharm会去读python的库的
    在新建项目的时候,会让你设置interpreter,这个时候 你要把你的virtualenv(/venv/bin/active)加入到项目配置里面。
    如果是已经建立的项目 到preferences里去搜索interpreter 然后改掉project
    ---
    如果没看懂我上面说的一大坨,那就把env放到项目外边去吧
    ---
    pycharm还有各种神一样的功能
    ---
    这种问题 google搜索可以找到解决方案。。。
    darasion
        21
    darasion  
       2015-04-05 15:05:02 +08:00
    注意备份。
    更要注意分解任务,别积攒一大坨才提交。
    jianghu52
        22
    jianghu52  
       2015-04-05 15:58:29 +08:00
    很好的坑,谢谢楼主帮忙填过了。
    yueyoum
        23
    yueyoum  
       2015-04-05 22:36:04 +08:00
    以上来就用IDE, 这些问题就会注意不到
    virtualenv 和你 project 中的 代码 没关系, 仅仅是 python 运行环境而已。

    和 pycharm没关系。

    我用 pycharm做了几个项目了, 看到LZ这贴就觉得奇怪。

    IDE还是挺害人的,
    就像我同学一直标榜的C++才是真正的程序员,不用VS的都是SB,
    当我问他 编译和链接分别是什么意思? 他当时的回答就是不知道,只要从VS运行项目就行
    Feiox
        24
    Feiox  
    OP
       2015-04-06 10:29:39 +08:00
    @yueyoum 呃,我是从 st2 学起来的,开始真正做开发才使用 IDE。这是我知道,但事实是 IDE 的重构功能真的改了我的第三方库(SQLAlchemy)。有些灵异的代码问题,也许是因为我太菜(但已经排除是空格缩进的问题),错误无法复现,但确实是突然又好了。
    @wph95 嗯嗯,我已经把 venv 移除项目目录了。多谢。另外,可不可以再说说 PyChram 的那些神一样的功能?我感觉我只用到了其中一小部分。
    @nicai000 我也知道,所以当我遇到这样的问题时,我的大脑就宕机了。我记得高中时候有一次,刚装完 Windows 7 ,配置完成之后,开机过了一会就蓝屏,重启又蓝屏,再重启,从此不蓝屏。这算是?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2733 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 10:27 · PVG 18:27 · LAX 03:27 · JFK 06:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.