목차
搭建自己的repo server极简入门
백엔드 개발 PHP 튜토리얼 搭建自己的repo server极简入门_PHP教程

搭建自己的repo server极简入门_PHP教程

Jul 12, 2016 am 09:04 AM
android

搭建自己的repo server极简入门

这篇文章主要作为一个学习笔记,同时也希望可以帮助到其他有需要的朋友

首先感谢如下几篇文章的指导:

http://blog.csdn.net/hansel/article/details/9798189
http://blog.csdn.net/lb5761311/article/details/47723455
http://bbs.mfunz.com/thread-1015705-1-1.html
http://blog.csdn.net/sunweizhong1024/article/details/8055372
http://blog.csdn.net/itleaks/article/details/30021395?utm_source=tuicool&utm_medium=referral


正文 -- repo完整安装及项目同步


1. 下载repo bootstrap(repo的启动文件,用于安装完整的repo)

  1. git clone git://git.omapzoom.org/git-repo.git
clone完成后,repo bootstrap文件位于如下路径:

  1. ./git-repo/repo


2. 安装repo bootstrap

a. 创建本地repo

  1. mkdir ~/bin/
  2. cp ./git-repo/repo ~/bin/

b. 设置环境变量:

  1. vi ~/.profile
确保有如下三行

  1. if [ -d "$HOME/bin" ] ; then
  2. PATH="$HOME/bin:$PATH"
  3. fi

c. 使环境变量生效

  1. source ~/.profile
使bin路径生效,以后可以直接命令行repo执行


3. patch repo bootstrap

  1. vi ~/bin/repo
按照如下diff做修改

  1. -- REPO_URL = 'https://gerrit.googlesource.com/git-repo'
  2. ++ REPO_URL = 'git://codeaurora.org/tools/repo.git'
这一步骤必须做,否则会在第4步时,出现如下log中repo URL下载超时的问题:

  1. fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
  2. fatal: error [Errno 101] Network is unreachable
超时是因为gerrit.googlesource.com被墙了


4. 创建项目manifest清单,repo会以manifest中的配置来同步项目

a. 在server上创建manifest.git空仓库,在此以如下remote url地址为例:

  1. cd manifest.git
  2. git remote -v
  3. origin git:manifest (fetch)
  4. origin git:manifest (push)

b. 在客户端上clone manifest仓库

  1. git clone git:manifest

c. 创建default.xml文件,repo默认会以manifest仓库的default.xml为配置文件

  1. cd manifest
  2. vi default.xml
输入如下内容:



  1. fetch="git:"
  2. review="https://android-review.googlesource.com/" />
  3. remote="origin"
  4. sync-j="4" />




manifest配置分为三大部分:remote default 以及 project,分别进行讲解

remote:
指代同步项目的一个server地址(可有多个remote)
name为一个唯一标识的名字
fetch为url的前缀,在我们的例子当中,仓库路径一概都是git:XXX,所以前缀就是"git:"
review暂时可以不予考虑,以例子中的为准

default:
指代同步项目使用的默认server配置:
revision指代git分支的名字
remote指代使用的remote server
sync-j表示同步项目时并行个数

project:
指代同步项目的git仓库,这里假设我们有一个git:test的仓库(可以有多个)
name就是git仓库名test
path就是设置仓库存放在repo project的哪个目录下,这里就直接设置为存放在repo project子目录的test中

d. 同步default.xml的修改至服务器

  1. git add default.xml
  2. git commit -m "udpate default.xml for repo sync test"
  3. git push origin master


5. 安装完整版repo

a. 先创建并进入一个自定义目录:

  1. mkdir test-project
  2. cd test-project

b. 执行如下repo命令,用于初始化repo,并且指定了mainfest项目清单

  1. repo init -u git:manifest

c. 执行完后,先会有如下log,这里才是真正的clone了完整版的repo:

  1. Get git://codeaurora.org/tools/repo.git
  2. remote: Counting objects: 3425, done.
  3. remote: Total 3425 (delta 0), reused 0 (delta 0)
  4. Receiving objects: 100% (3425/3425), 753.71 KiB, done.
  5. Resolving deltas: 100% (2311/2311), done.
  6. From git://codeaurora.org/tools/repo
  7. * [new branch] aosp-new/maint -> origin/aosp-new/maint
  8. * [new branch] aosp-new/master -> origin/aosp-new/master
  9. * [new branch] aosp-new/stable -> origin/aosp-new/stable
  10. * [new branch] caf-stable -> origin/caf-stable
  11. * [new branch] master -> origin/master
  12. * [new branch] stable -> origin/stable
  13. * [new tag] v1.0 -> v1.0
  14. * [new tag] v1.0.1 -> v1.0.1
  15. ......
  16. Getting manifest ...
  17. from git:manifest
  18. remote: Counting objects: 18, done.
  19. remote: Compressing objects: 100% (16/16), done.
  20. remote: Total 18 (delta 4), reused 0 (delta 0)
  21. Unpacking objects: 100% (18/18), done.
  22. From git:manifest
  23. * [new branch] master -> origin/master

d. 接下来会要求初始化repo帐号信息,例子中与git保持一致,例如如下,中括号中的是git帐号信息,
在冒号后输入与其一致的信息即可:

  1. Your Name [willqian]: willqian
  2. Your Email [690004467@qq.com]: 690004467@qq.com
  3. Your identity is: willqian
  4. is this correct [y/n]? y

e. 此时,目录下会有一个隐藏文件夹.repo,完整版的repo位于路径

  1. .repo/repo/


6. repo同步项目

a. 同步

  1. cd test-project
  2. repo sync
完成后,可以通过log看到,manifest项目清单中列出的test仓库已clone完毕
我们进入到test仓库中查看,发现有一个问题,此时处于no branch的状态

  1. cd test
  2. git status
  3. # Not currently on any branch.
  4. nothing to commit (working directory clean)

b. 切到master分支上

  1. cd test-project
  2. repo start master --all
通过这个操作,我们再次进入到test仓库中,看到已处于master分支上

  1. cd test
  2. git status
  3. # On branch master
  4. nothing to commit (working directory clean)


至此,repo的完整安装以及项目同步的例子便以完成

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1075900.htmlTechArticle搭建自己的repo server极简入门 这篇文章主要作为一个学习笔记,同时也希望可以帮助到其他有需要的朋友 首先感谢如下几篇文章的指导:...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

새로운 보고서는 소문난 삼성 갤럭시 S25, 갤럭시 S25 플러스, 갤럭시 S25 울트라 카메라 업그레이드에 대한 비판적인 평가를 제공합니다. 새로운 보고서는 소문난 삼성 갤럭시 S25, 갤럭시 S25 플러스, 갤럭시 S25 울트라 카메라 업그레이드에 대한 비판적인 평가를 제공합니다. Sep 12, 2024 pm 12:23 PM

최근 아이스 유니버스는 삼성의 차기 플래그십 스마트폰으로 널리 알려진 갤럭시 S25 울트라에 대한 세부 정보를 꾸준히 공개해 왔습니다. 무엇보다도 유출자는 삼성이 카메라 업그레이드를 하나만 가져올 계획이라고 주장했습니다.

삼성 갤럭시 S25 울트라, 디자인 변경 루머가 공개된 첫 번째 렌더링 이미지 유출 삼성 갤럭시 S25 울트라, 디자인 변경 루머가 공개된 첫 번째 렌더링 이미지 유출 Sep 11, 2024 am 06:37 AM

OnLeaks는 이제 Android Headlines와 제휴하여 X(이전 Twitter) 팔로어로부터 4,000달러 이상의 수익을 창출하려는 시도가 실패한 지 며칠 후 Galaxy S25 Ultra에 대한 첫 번째 모습을 제공합니다. 맥락에 따라 h 아래에 포함된 렌더링 이미지

IFA 2024 | TCL의 NXTPAPER 14는 성능 면에서는 Galaxy Tab S10 Ultra와 일치하지 않지만 크기에서는 거의 일치합니다. IFA 2024 | TCL의 NXTPAPER 14는 성능 면에서는 Galaxy Tab S10 Ultra와 일치하지 않지만 크기에서는 거의 일치합니다. Sep 07, 2024 am 06:35 AM

TCL은 두 가지 새로운 스마트폰을 발표하는 것과 함께 NXTPAPER 14라는 새로운 Android 태블릿도 발표했는데, TCL의 거대한 화면 크기는 판매 포인트 중 하나입니다. NXTPAPER 14는 TCL의 시그니처 브랜드인 무광택 LCD 패널 버전 3.0을 갖추고 있습니다.

Vivo Y300 Pro는 7.69mm의 슬림한 본체에 6,500mAh 배터리를 탑재했습니다. Vivo Y300 Pro는 7.69mm의 슬림한 본체에 6,500mAh 배터리를 탑재했습니다. Sep 07, 2024 am 06:39 AM

Vivo Y300 Pro는 방금 완전히 공개되었으며 대용량 배터리를 갖춘 가장 얇은 중급 Android 휴대폰 중 하나입니다. 정확히 말하면 스마트폰의 두께는 7.69mm에 불과하지만 배터리 용량은 6,500mAh입니다. 최근 출시된 것과 동일한 용량이다.

Samsung Galaxy S24 FE는 4가지 색상과 2가지 메모리 옵션으로 예상보다 낮은 가격으로 출시될 예정 Samsung Galaxy S24 FE는 4가지 색상과 2가지 메모리 옵션으로 예상보다 낮은 가격으로 출시될 예정 Sep 12, 2024 pm 09:21 PM

삼성전자는 팬에디션(FE) 스마트폰 시리즈를 언제 업데이트할지 아직 힌트를 주지 않았다. 현재 상태로 Galaxy S23 FE는 2023년 10월 초에 출시된 회사의 최신 버전으로 남아 있습니다.

새로운 보고서는 소문난 삼성 갤럭시 S25, 갤럭시 S25 플러스, 갤럭시 S25 울트라 카메라 업그레이드에 대한 비판적인 평가를 제공합니다. 새로운 보고서는 소문난 삼성 갤럭시 S25, 갤럭시 S25 플러스, 갤럭시 S25 울트라 카메라 업그레이드에 대한 비판적인 평가를 제공합니다. Sep 12, 2024 pm 12:22 PM

최근 아이스 유니버스는 삼성의 차기 플래그십 스마트폰으로 널리 알려진 갤럭시 S25 울트라에 대한 세부 정보를 꾸준히 공개해 왔습니다. 무엇보다도 유출자는 삼성이 카메라 업그레이드를 하나만 가져올 계획이라고 주장했습니다.

Xiaomi Redmi Note 14 Pro Plus는 Light Hunter 800 카메라를 탑재한 최초의 Qualcomm Snapdragon 7s Gen 3 스마트폰으로 출시됩니다. Xiaomi Redmi Note 14 Pro Plus는 Light Hunter 800 카메라를 탑재한 최초의 Qualcomm Snapdragon 7s Gen 3 스마트폰으로 출시됩니다. Sep 27, 2024 am 06:23 AM

Redmi Note 14 Pro Plus는 이제 작년 Redmi Note 13 Pro Plus(Amazon에서 현재 $375)의 직접적인 후속 제품으로 공식화되었습니다. 예상대로 Redmi Note 14 Pro Plus는 Redmi Note 14 및 Redmi Note 14 Pro와 함께 Redmi Note 14 시리즈를 주도합니다. 리

iQOO Z9 Turbo Plus: 잠재적으로 강화된 시리즈 플래그십에 대한 예약 시작 iQOO Z9 Turbo Plus: 잠재적으로 강화된 시리즈 플래그십에 대한 예약 시작 Sep 10, 2024 am 06:45 AM

OnePlus의 자매 브랜드 iQOO는 2023-4년 제품 주기가 거의 끝날 수 있습니다. 그럼에도 불구하고 브랜드는 Z9 시리즈가 아직 끝나지 않았다고 선언했습니다. 최종이자 아마도 최고급인 Turbo+ 변형이 예상대로 발표되었습니다. 티

See all articles