使用CSDN CODE来存放OPENSTACK位于GITHUB上的源码

use CSDN CODE to pull openstack codes

2014-11-20

Author:Hyphen

问题

直接从GITHUB上获取代码,经常是没保障,特别是用DEVSTACK的时候,经常超时,所以我想到了每天把GITHUB上的代码更新到本地的想法。但本地还要搞一套GIT服务环境,而且也只是自己用,为何不使用公开的软件库呢,之前记得OSCHINA和CSDN 都搞GIT,相比之下,使用了CSDN CODE,使用起来就跟GITHUB一样,但有个问题是容量现在默认只给我一个G,昨天把OPENSTACK,OPENSTACK-DEV,STACKFORGE这三个目录下,DEVSTACK安装时要用到的库都同步了下,大半个G。

解决方案

我就是在我本地一个实例上,为每个软件库建立一个目录,然后PULL GITHUB上的代码,切换远程URL为CSDN CODE我的软件库,PUSH代码。这些都写了个循环的脚本来做,初定每天更新一次,定时。 CSDN CODE我的软件库 https://code.csdn.net/yanheven1/

sync_git.sh

  1. #!/bin/sh -x
  2. PROJECT=("ceilometer" "cinder" "glance" "heat" "horizon" "ironic" "keystone" "neutron" "nova" "sahara" "swift" "trove" "requirements" "tempest" "tempest-lib" "python-ceilometerclient" "python-cinderclient" "python-glanceclient" "python-heatclient" "python-ironicclient" "python-keystoneclient" "python-neutronclient" "python-novaclient" "python-saharaclient" "python-swiftclient" "python-troveclient" "python-openstackclient" "cliff" "pycadf" "stevedore" "taskflow" "glance_store" "heat-cfntools" "heat-templates" "django_openstack_auth" "keystonemiddleware" "diskimage-builder" "os-apply-config" "os-collect-config" "os-refresh-config" "tripleo-image-elements" "ironic-python-agent")
  3. PROJECT_STACKFORGE=("swift3" "wsme" "pecan" "sqlalchemy-migrate")
  4. PROJECT_OPENSTACK_DEV=("pbr" "devstack")
  5. PROJECT_OSLO=("oslo.concurrency" "oslo.config" "oslo.context" "oslo.db" "oslo.i18n" "oslo.log" "oslo.messaging" "oslo.middleware" "oslo.rootwrap" "oslo.serialization" "oslo.utils" "oslo.vmware")
  6. PROJECT_OSLO_NAME=("oslo-concurrency" "oslo-config" "oslo-context" "oslo-db" "oslo-i18n" "oslo-log" "oslo-messaging" "oslo-middleware" "oslo-rootwrap" "oslo-serialization" "oslo-utils" "oslo-vmware")
  7. for pro in "${PROJECT[@]}";do mkdir /home/$pro;done
  8. for pro in "${PROJECT_STACKFORGE[@]}";do mkdir /home/$pro;done
  9. for pro in "${PROJECT_OPENSTACK_DEV[@]}";do mkdir /home/$pro;done
  10. for pro in "${PROJECT_OSLO[@]}";do mkdir /home/$pro;done
  11. GIT_OPENSTACK=https://github.com/openstack
  12. GIT_STACKFORGE=https://github.com/stackforge
  13. GIT_OPENSTACK_DEV=https://github.com/openstack-dev
  14. GIT_CSDN=[email protected].csdn.net:yanheven1
  15. for pro in "${PROJECT[@]}"
  16. do
  17. cd /home/$pro
  18. git init
  19. git remote add origin $GIT_OPENSTACK/$pro.git
  20. git pull origin master
  21. git remote rm origin
  22. git remote add origin $GIT_CSDN/$pro.git
  23. git push origin master
  24. git remote rm origin
  25. done
  26. for pro in "${PROJECT_STACKFORGE[@]}"
  27. do
  28. cd /home/$pro
  29. git init
  30. git remote add origin $GIT_STACKFORGE/$pro.git
  31. git pull origin master
  32. git remote rm origin
  33. git remote add origin $GIT_CSDN/$pro.git
  34. git push origin master
  35. git remote rm origin
  36. done
  37. for pro in "${PROJECT_OPENSTACK_DEV[@]}"
  38. do
  39. cd /home/$pro
  40. git init
  41. git remote add origin $GIT_OPENSTACK_DEV/$pro.git
  42. git pull origin master
  43. git remote rm origin
  44. git remote add origin $GIT_CSDN/$pro.git
  45. git push origin master
  46. git remote rm origin
  47. done
  48. for ((i=0;i<12;i++))
  49. do
  50. cd /home/${PROJECT_OSLO[$i]}
  51. git init
  52. git remote add origin $GIT_OPENSTACK/${PROJECT_OSLO[$i]}.git
  53. git pull origin master
  54. git remote rm origin
  55. git remote add origin $GIT_CSDN/${PROJECT_OSLO_NAME[$i]}.git
  56. git push origin master
  57. git remote rm origin
  58. done

然后定时执行:

  1. 0 * * * * sh /home/git.sh

最后修改下DEVSTACK下面的stackrc文件中的软件库URL即可使用:

  1. sed -i "s/{GIT_BASE}\/openstack\/oslo./{GIT_BASE}\/oslo-/g" /home/stack/devstack/stackrc
  2. sed -i "s/{GIT_BASE:-git:\/\/git.openstack.org}/{GIT_BASE:-https:\/\/code.csdn.net\/yanheven1}/g" /home/stack/devstack/stackrc
  3. sed -i "s/{GIT_BASE}\/stackforge/{GIT_BASE}/g" /home/stack/devstack/stackrc
  4. sed -i "s/{GIT_BASE}\/openstack/{GIT_BASE}/g" /home/stack/devstack/stackrc
  5. sed -i "s/{GIT_BASE}\/openstack-dev/{GIT_BASE}/g" /home/stack/devstack/stackrc
时间: 2024-11-06 03:35:36

使用CSDN CODE来存放OPENSTACK位于GITHUB上的源码的相关文章

【随笔】从gitHub上获取源码

有时候,需要从gitHub上获取源码,下面介绍几个方法: 1.获取链接: 打开gitHub代码库的页面,能在右边看到这个: 点击红圈里的标记,该链接就会复制下来. 然后,如果安装了小乌龟(TortoiseGit),就可以获取该源码了. 首先点击右键,选择小乌龟的选项: 然后在出现的窗口中粘上刚才复制的链接,以及选择主目录: 点击OK,现在,你就可以用小乌龟来获取源码或者上传源码了. 在Linux中,可以使用命令: git clone https://github.com/ajaxorg/ace.

在 github 上下载源码

可以找到下面的源码获取方式. 在github开源项目的页面上可以找到上图的三个获取源码方式. 使用git的网址,可以使用比如TortoiseGit这里的客户端软件获取源码 TortoiseGit 如下图,如果安装了TortoiseGit,那么在一个还没有建立git关系的文件夹上右键,可以看到三个相关菜单. 点击Git Clone, 出现下图窗口 再点击OK,既可以下载源码.使用TortoiseGit,也可以方便的进行源码提交. 官方客户端软件GitHub Windows版本下载 http://w

GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流(转载)

最近听同事说他都在使用GitHub,GitHub是程序员的社区,在里面可以学到很多书上学不到的东西,所以最近在准备入手这方面的知识去尝试学习,正好碰到这么详细完整的文章,就转载了,希望对自己和大家有帮助. GitHub操作总结 : 总结看不明白就看下面的详细讲解. GitHub操作流程 : 第一次提交 : 方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样; -- 初始化Git仓库 :git init ; -- 提交改变到缓存 :git commit -m 'desc

【代码管理】GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流

找到一篇很详细的Git教程,真的很不错,推荐!!! GitHub操作总结 : 总结看不明白就看下面的详细讲解. . 作者 :万境绝尘  . GitHub操作流程 : 第一次提交 : 方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样; -- 初始化git仓库 :git init ; -- 提交改变到缓存 :git commit -m 'description' ; -- 本地git仓库关联GitHub仓库 : git remote add origin [email 

国内如何下载code.google、googlecode上的源码webrtc

Github下载代码确实很方便,直接下载那个zip包就OK,无奈有很多开源代码只在googlecode上有,googlecode又只能通过svn下载.在国内需要翻墙才能下载.本人常用的翻墙手段GoAgent和某某门,GoAgent只能在chrome中用,看看网页:某某门穿透力还是差了点.于是在baidu上有搜索到了一个新方法,成功下载googlecode上的webrtc代码,步骤如下: Step1: 打开https://code.google.com/p/smarthosts/,下载hosts文

如何从github上面拷贝源码

有好奇心的朋友们一定都想看一看很多开源项目的源码,那么github就不用说啦,太多的开源项目都把源码放到上面. 博主最近为了学习angularjs也不得不去github上面弄源码,下面将会介绍如何做: 1 注册github账号,查找项目源码URL 2 安装版本控制工具git,创建本地库 3 安装TortoiseGit‘,获取代码 1 查找目标源码的github URL 首先,你要有一个github的账号......... 然后,在github中搜索对应的项目名称,然后在右边就可以看到URL了:

Openstack liberty 创建实例快照源码分析1

Openstack liberty中也支持对云主机执行快照,快照是备份系统中一种常用的数据保护技术,在生产系统故障后,能通过快照将系统快速恢复到快照时间点:那Openstack中的云主机快照是否也支持这种故障恢复呢?请看下文: Openstack支持对处于运行或者停止状态的云主机执行快照,另外Openstack既可以从镜像启动云主机,也可以从启动磁盘启动云主机,根据条件组合,可以执行下面4中快照: 镜像启动云主机的离线快照 镜像启动云主机的在线快照 磁盘启动云主机的离线快照 磁盘启动云主机的在线

使用 Git 和 GitHub 托管项目源码

这段时间想研究下,GitHub 的使用,但是桌面版下载速度贼慢(貌似需要FQ) 好在 廖雪峰 老师有一个 Git 的教程,也可以和 GitHub 配合使用 廖雪峰老师的Git教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 现将学习时,用到的东西记录如下(有些乱,主要都是网上找的一次资料,做个备份): 1.下载 Git 首先我们需要下载 Git 客户端并安装,具体操作步骤:

linux 内核网络协议栈阅读理解--带详尽注释以及相关流程调用注释,附 github 注释后源码

linux 内核网络协议栈阅读理解--带详尽注释以及相关流程调用注释,对理解内核协议栈源码很有帮助 对理解阅读 linux 协议栈源码很用帮助 github 地址: https://github.com/y123456yz/Reading-and-comprehense-linux-Kernel-network-protocol-stack