位桶同步本地同步位桶帐户的所有存储库
bitbucket-sync的Python项目详细描述
将位桶帐户的所有存储库同步到本地克隆。
同步意味着远程存储库被克隆到本地磁盘和更高版本 由远程存储库中的更改更新。此工具从不从 本地磁盘到远程服务器。
安装
使用pypi中的pip(推荐):
$ pip install bitbucket-sync
使用github中的pip:
$ pip install git+https://github.com/Gautier/bitbucket-sync.git#bitbucket-sync
要求-安装git和/或hg命令
为了能够使用git或mercurial存储库,相应的程序 必须在本地安装。
但是,如果不使用其中一种存储库类型,则不需要 安装相关命令。
如果尝试在没有相关程序的情况下同步存储库 Bitbucket同步将失败。
获取访问BitBucket帐户的凭据
要访问BitBucket帐户下的存储库,需要配置 对此进行说明并获取所需的oauth令牌,称为key和secret。
转到https://.org(您可爱的化身)-管理帐户集成应用程序
在“oauth consumers”部分中,单击“add consumer”,将显示一个表单
填写一些信息(这并不重要):
name:位桶同步
description:将位桶帐户的所有存储库同步到本地克隆。
url:https://github.com/Gautier/bitbucket-sync
然后点击“添加消费者”。
您将看到一个显示key和secret字符串的页面。这些 字符串将用于以下对位桶同步的调用。
请注意,密钥和机密将在同一个位置(oauth)被访问 在你创建它的Bitbucket中。不需要重新创建它 再一次。
将存储库从BitBucket同步到本地目录
最初,克隆您在Bitbucket上拥有的所有存储库
拥有一个BitBucket帐户,例如“Gautier”,BitBucket将显示一组 以此帐户名“gautier/”为前缀的存储库。这些是 存储库,由该帐户拥有。
要将给定用户帐户拥有的所有Bitbucket存储库克隆到本地磁盘:
$ mkdir archive $ cd archive $ bitbucket-sync --key xxxxOAuthKeyxxx --secret yyyyOAuthSecretyyy --directory . --owner Gautier
这将创建一个名为gautier的子目录,其中每个 克隆存储库。
从给定帐户拥有的Bitbucket回购中获取所有更新
过程非常简单,只需像以前一样重复调用即可:
$ bitbucket-sync --key xxxxOAuthKeyxxx --secret yyyyOAuthSecretyyy --directory . --owner Gautier
BitBucket上的所有更新都将被提取到本地存储库。
所有新的存储库都将被克隆。
没有清理从BitBucket中删除的存储库的过程。
在Bitbucket上重命名的存储库将被视为新的存储库(并被克隆)。
同步您可以直接访问的其他存储库
如果其他用户(包括团队帐户)允许您访问所拥有的存储库 通过它们,您也将有机会同步它们。
从显式命名所有者同步存储库
您只需在通话中更改所有者即可完成此操作:
$ bitbucket-sync --key xxxxOAuthKeyxxx --secret yyyyOAuthSecretyyy --directory . --owner vlcinsky
同步您的帐户可访问的所有存储库
如果省略–owner参数,则您有权访问的所有存储库都将同步:
$ bitbucket-sync --key xxxxOAuthKeyxxx --secret yyyyOAuthSecretyyy --directory .
通常,每个所有者都有一个子目录,然后所有相关的存储库都在其中。
问题和答案
该工具是否同步Mercurial存储库?
是的,只要Mercurial是本地安装的。
它是否从Bitbucket克隆了所有可公开访问的存储库?
只是没有。
该工具只考虑存储库:
- 创建(和拥有)人你
- 由其他人创建,并明确授权 您帐户的存储库。