当克隆我编辑的forked git仓库时,变化没有反映出来,而是克隆了原始仓库。

问题描述 投票:0回答:1

我的目标是分叉一个原始版本库,编辑它,然后克隆到我的beaglebone black上。

这里是现有的资源库的链接。https:/github.comadafruitAdafruit_Python_BNO055。https:/github.comadafruitAdafruit_Python_GPIO。

下面是我编辑的分叉版本的仓库链接。https:/github.comfrank2597Adafruit_Python_BNO055。https:/github.comfrank2597Adafruit_Python_GPIO。

我做了一些改动......在Adafruit_Python_GPIOAdafruit_GPIOI2C.py中,我把第55行的I2C总线改为2。

return 2

在Adafruit_Python_GPIOsetup.py中,我把第32行改成了。

url = 'https://github.com/frank2597/Adafruit_Python_GPIO/',

在Adafruit_Python_BNO055setup.py中,我把第27行和第28行改成了:

url = 'https://github.com/frank2597/Adafruit_Python_BNO055/',

dependency_links =['https://github.com/frank2597/Adafruit_Python_GPIO/tarball/master#egg=Adafruit-GPIO-0.9.3'],

然后我克隆了Adafruit_Python_BNO055,并安装了依赖的Adafruit_Python_GPIO和setup.py。

git clone https://github.com/frank2597/Adafruit_Python_BNO055.git
cd Adafruit_Python_BNO055
sudo python setup.py install

然而解压Adafruit_GPIO -1.0.4 -py2.7.egg文件,并查看位于这里的I2C.py文件。

/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-1.0.4-py2.7.egg/Adafruit_GPIO/GPIO.pyc

我注意到我的改变没有被反映出来,I2C总线仍然被设置为1.似乎它仍然在克隆原始仓库,而不是我编辑的forked版本。有谁知道我可能做错了什么?谢谢你,我的目标是分叉一个原始仓库,而不是我编辑的分叉版本。

python git github git-clone git-fork
1个回答
0
投票

dependency_links 被宣布过时,最后 移除pip 19.0. 取而代之的是 install_requires 特殊语法(自 pip 19.1):

install_requires=[
    'package_name @ git+https://gitlab.com/<PRIVATE_ORG>/<PRIVATE_REPO>.git@<COMMIT_ID>'
]

https:/pip.readthedocs.ioenstablereferencepip_install#requirement-specifiers。https:/www.python.orgdevpepspep-0440#direct-references

这就要求 pip install 包括 pip install . 并不能与 python setup.py install.

在你的特殊情况下,这意味着 Adafruit_Python_BNO055/setup.py 忽略 dependency_links 并安装 Adafruit-GPIO 从PyPI中删除。解决方法是删除 dependency_links 并安装依赖性 Adafruit-GPIO 使用 pipinstall_requiressetup.py:

install_requires=[
    'Adafruit-GPIO @ git+https://github.com/frank2597/Adafruit_Python_GPIO',
    'pyserial',
]
© www.soinside.com 2019 - 2024. All rights reserved.