gpt4 book ai didi

python - 如何在 $WORKON_HOME 之外的版本控制下保持 virtualenvwrapper Hook

转载 作者:太空宇宙 更新时间:2023-11-04 06:13:30 26 4
gpt4 key购买 nike

我在 ~/.virtualenvs(我为 $WORKON_HOME 变量定义的目录)下创建了许多 virtualenvwrapper Hook 。

我通常喜欢将这样的系统文件置于版本控制之下——例如,我有一个高度自定义的 bash 配置文件 ~/Repos/dotfiles/bash_profile 是符号链接(symbolic link)到 ~/.bash_profile

但是,当我尝试将 virtualenvwrapper Hook 移动到 ~/Repos/dotfiles/virtualenvwrapper_hooks/ 下,然后将它们符号链接(symbolic link)回 ~/.virtualenvs/ 下的原始文件名时,当我打开一个新的终端窗口时出现以下错误:

stevedore.extension error calling 'user_scripts': [Errno 62] Too many levels of symbolic links: '/Users/yiqing/.virtualenvs/postactivate'
stevedore.extension [Errno 62] Too many levels of symbolic links: '/Users/yiqing/.virtualenvs/postactivate'
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/stevedore/extension.py", line 137, in _invoke_one_plugin
response_callback(func(e, *args, **kwds))
File "/Library/Python/2.7/site-packages/virtualenvwrapper/hook_loader.py", line 185, in invoke
ext.plugin(args)
File "/Library/Python/2.7/site-packages/virtualenvwrapper/user_scripts.py", line 143, in initialize
make_hook(get_path('$VIRTUALENVWRAPPER_HOOK_DIR', filename), comment)
File "/Library/Python/2.7/site-packages/virtualenvwrapper/user_scripts.py", line 124, in make_hook
f = open(filename, 'w')
IOError: [Errno 62] Too many levels of symbolic links: '/Users/yiqing/.virtualenvs/postactivate'

对整个目录进行符号链接(symbolic link)(rm -rf ~/.virtualenvs ; ln -sF ...)也不起作用,因为当我尝试用 Tab 键完成命令时,它会给出返回:

NOTE: Virtual environments directory /Users/yiqing/.virtualenvs does not exist. Creating...
mkdir: /Users/yiqing/.virtualenvs: Input/output error

除了在 ~/.virtualenvs 中创建 Git 存储库之外,我想知道我还有哪些其他选项可以将这些 Hook 置于版本控制之下?

最佳答案

我想通了!

令我沮丧的是,当我尝试对整个目录进行符号链接(symbolic link)时,我不小心指出了相对路径而不是绝对路径。符号链接(symbolic link)绝对路径(提示:$PWD/ 将制表符补全到 OS X 中的完整路径)将起作用:)

关于python - 如何在 $WORKON_HOME 之外的版本控制下保持 virtualenvwrapper Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17303807/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com