SVN+Git

Git

学习Git之前,我们需要明白一个概念,版本控制!

版本控制

什么是版本控制 版本迭代,新的版本!版本管理器

版本控制:是一种在开发的过程中用于管理我们对文件,目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前版本的软件工程技术。

  • 实现跨区多人协同开发
  • 追踪和记载一个或者多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 统计工作量
  • 并行开发、提高开发效率
  • 跟踪记录整个软件的开发过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

简单来说就是多人协同开发项目的技术。

image-20210508152022392

常见的版本控制工具:

  • Git
  • SVN(Subversion)
  • CVS(Concurrent Versions System)
  • VSS(Micorosoft Visual SourceSafe)
  • TFS(Team Foundation Server)
  • Visual Studio Online

版本控制产品非常的多(Perforce、Rational ClearCase、RCS(GNU Revision Control System)、Serena Dimention、SVK、BitKeeper、Monotone、Bazaar、Mercurial、SourceGear Vault),现在影响力最大且使用最广泛的是Git与SVN

SVN:版本集中控制

所有的版本数据都保存在服务器上,协同开发者从服务器上更新或者上传自己的修改

(所有的版本都存在服务器上面,用户的本地都只有自己以前所同步的版本,如果不联网的话,用户就看不到历史版本,风险就是服务器崩了。)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EfnGa2v0-1620702955654)(C:%5CUsers%5C%E7%8E%8B%E9%A1%BA%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5Cimage-20210508153248625.png)]

Git:分布式版本控制

(每个人都有全部的代码,风险就是安全隐患。)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CrcwveEk-1620702955657)(C:%5CUsers%5C%E7%8E%8B%E9%A1%BA%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5Cimage-20210508153227616.png)]

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!

GIt历史

同生活中的许多伟大事物一样,Git 诞生于一个极富纷争大举创新的年代。

Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。

Linux社区中存在很多的大佬!破解研究 BitKeeper !

到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux 内核社区免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux 的缔造者 Linus Torvalds)基于使用 BitKeeper 时的经验教训,开发出自己的版本系统。(2周左右!) 也就是后来的 Git!

SVN

常用操作:

image-20210508154523746

第一次来公司就用:checkout

每日上班就用:update

每日下班就用:commit

image-20210511110809189

每日上班就用:update

每日下班就用:commit

[外链图片转存中…(img-zjsXdY6R-1620702955663)]

<think>好的,用户遇到了pip安装时的错误,具体是“'anacondalibsite-packages' is not a valid editable requirement”。首先,我需要分析这个错误的原因。根据用户提供的引用[5],类似的错误信息是由于可编辑安装的路径格式不正确。比如,之前出现的错误是因为单引号的问题,而这里可能路径中的斜杠或空格处理不当。 接下来,我应该检查用户使用的安装命令是否正确。可编辑模式通常使用`-e`选项,后面跟着点号或路径。例如,正确的命令是`pip install -e .`或者指定路径。用户可能将路径错误地写成了“anacondalibsite-packages”,这可能缺少斜杠或者使用了错误的路径分隔符。正确的路径应该包含正确的目录结构,比如在Windows下可能是`C:\Anaconda\Lib\site-packages`,但通常不应该直接安装到site-packages目录,而是项目的本地目录。 另外,引用[3]提到权限问题,但这里可能不是权限问题,而是路径格式错误。需要确保路径正确,并且使用双引号包裹可能包含空格的路径。例如,用户可能输入了类似`pip install -e anacondalibsite-packages`,而正确的应该是`pip install -e "path\to\project"`,其中路径使用正确的斜杠和引号。 此外,引用[5]中的例子显示,将单引号改为双引号解决了问题,所以用户可能需要检查路径中的特殊字符是否需要转义或者使用双引号包裹。另外,确保可编辑安装的目标是一个包含setup.py的有效项目目录,而不是site-packages目录本身,因为site-packages是pip安装包的目标位置,而不是源位置。 总结可能的解决方案:检查安装命令的格式,确保路径正确并使用双引号,确认目标目录是项目根目录而不是site-packages,以及处理可能的路径分隔符问题。同时,提醒用户如果问题持续,可能需要检查项目配置或虚拟环境设置。</think>### 如何解决“'anacondalibsite-packages' is not a valid editable requirement”错误? 此错误通常是由于 **可编辑模式安装路径格式不正确** 或 **项目配置问题** 引起的。以下是逐步解决方案: --- #### 1. **检查安装命令格式** 可编辑安装模式(`-e`)要求路径指向 **包含`setup.py`的目录**。确保命令格式正确: ```bash # 正确示例:使用当前目录(.表示当前目录) pip install -e . # 或指定明确路径(路径需包含setup.py) pip install -e "C:\path\to\your\project" ``` - **关键点**: - 路径需用双引号包裹(尤其路径含空格时)[^5]。 - 不要直接指向`site-packages`目录,这是Python默认的包安装位置,而非源代码目录。 --- #### 2. **验证项目目录结构** 确保项目目录包含有效的`setup.py`或`pyproject.toml`文件。例如: ``` your_project/ ├── setup.py # 必须存在 ├── your_module/ # 项目代码目录 └── ... ``` --- #### 3. **路径分隔符与转义** 在Windows系统中,路径分隔符需使用反斜杠`\`,且可能需要转义: ```bash # 示例:路径含空格或特殊字符时 pip install -e "C:\Program Files\your_project" ``` --- #### 4. **检查虚拟环境状态** 如果使用Anaconda虚拟环境,请确认: - 已激活正确的环境:`conda activate your_env` - 未尝试修改Anaconda系统目录权限(否则可能触发权限错误[^3])。 --- #### 5. **升级pip和setuptools** 过时的工具可能导致解析错误: ```bash pip install --upgrade pip setuptools ``` --- #### 6. **其他可能原因** - **依赖缺失**:检查`setup.py`中是否正确定义了依赖(如`torch`或`metrics`需显式声明)。 - **文件权限**:若路径涉及系统保护目录(如`Program Files`),尝试以管理员身份运行命令[^3]。 --- ### 相关问题 1. **如何编写有效的`setup.py`文件?** 2. **Anaconda虚拟环境中权限问题如何彻底解决?** 3. **可编辑安装模式(`pip install -e`)适用于哪些场景?** --- ### 参考解决方案示例 若错误仍存在,可尝试以下命令(假设项目目录为`./my_project`): ```bash cd my_project # 进入项目根目录 pip install -e . # 使用当前目录安装 ``` 若提示权限问题,添加`--user`选项: ```bash pip install -e . --user ``` [^1]: 关于pip默认安装路径的说明 : 权限问题的通用解决方案 [^5]: 路径格式与引号的使用建议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值