저장소를 Github의 폴더로 정렬 할 수 있습니까?


158

나는 git을 처음 사용하고 지금하고있는 일은 모든 최근 프로젝트를 저장소로 github에 업로드하는 것입니다. 웹 디자인, 워드 프레스 테마 및 다양한 유형의 응용 프로그램과 같은 다양한 프로젝트가 있습니다. 이들 중 일부는 다른 응용 프로그램으로 일부 테스트를 수행했기 때문에 더 큰 프로젝트에 속합니다.

문제는 지금 온라인에 혼란스러운 양의 리포지토리가 있다는 것입니다. 폴더 구조에서 관련 github 리포지토리를 그룹화하려면 어떻게해야합니까? github에서 리포지토리를 주문 및 구조화하거나 심지어 태그를 지정할 수있는 기능이 있습니까?


1
@ user478212 문제는 단일 리포지토리 내의 파일이 아니라 리포지토리를 배열하는 것입니다.
danijar

가장 가까운 "폴더"는 오늘 "프로젝트"입니다 (2019 년 2 월) : 아래에서 업데이트 된 답변보기
VonC

"프로젝트"는 폴더를 직접 시뮬레이션하지 않습니다. 폴더를 시뮬레이트하는 더 직접적인 방법은 아래의 답변 에서 설명한 것처럼 설명 태그를 사용하는 입니다.
peter554

답변:


68

GitHub 자체에서는 조직 을 만들지 않으면 저장소를 "폴더"로 그룹화 할 수 없습니다 . 예를 들어 모든 sublimeText 패키지 저장소 그룹으로 SublimeText를
참조하십시오 .

그러나 이것은 중첩 폴더 구성을 지원하지 않습니다. 현재 (2017 년 6 월) 중첩 된 조직 구조 만 지원합니다. .

2019 년 2 월 업데이트 : 이제 프로젝트 개념을 갖습니다 .
" 사용자 소유 프로젝트 — 개인 작업 공간 "참조

프로젝트 보드에 최대 5 개의 리포지토리를 연결할 수도 있습니다. 리포지토리를 연결하면 검색 범위가 연결된 리포지토리로 제한되므로 아직 프로젝트 보드에 추가하지 않은 새로운 문제를 신속하게 좁힐 수 있습니다.

https://i0.wp.com/user-images.githubusercontent.com/3477155/52346373-734e2580-29ed-11e9-82ad-9e5f1ab8aa99.gif?resize=1024%2C512&ssl=1

GitHub는 이제 태그를 주제 형식으로 지원합니다 .


원래 답변 2012 :

다른 해결책은 다른 저장소를 참조하는 저장소를 정의하는 것입니다. submodules로.

이렇게하면 "parent repos"라는 repos 중 하나 (다른 repos를 참조)를 복제 할 때 하위 모듈 당 하위 디렉토리와 함께 자체 디렉토리에 복제됩니다.

GitHub 계정 자체에는 시각적으로 명확하지 않지만 (여전히 부모 저장소와 함께 더 큰 저장소 목록이 포함되어 있기 때문에) 하나의 부모 저장소를 복제하면 관련된 모든 하위 모듈이 다시 제공됩니다.


문제 (302) 언급 한 코멘트에 의해 AnneTheAgile 지금은 2014 만 참조에 (2018 11월)tbnorth/github_repo_tags

작은 파이썬 프로그램이 저장소 은 GitHub API를 사용하여 저장소 목록을 가져옵니다. 이름, 설명 및 URL을 새 리포지토리에 기본적으로 repo_tags라고 추가합니다. 처음에는 각 '문제'에 분류되지 않은 태그가 지정되지만 정기적 인 문제 태그를 사용하여 원하는대로 태그를 지정할 수 있습니다.

다시 실행하면 repo_tags.pyrepos에 대한 문제 만 생성됩니다. 아직 문제가 해결되지 않았습니다.


4
좋아, 그래서 나는 많은 조직을 사용해야합니다 ... 왜 폴더별로 담당자를 구성 할 수없는 이유가 있습니까?
danijar

4
@sharethis 이것은 내가 아는 이유가 아닙니다 .GitHub에서 제안한 기능이 아닙니다.
VonC

5
위시리스트 태그도 괜찮을 것입니다. github.com/isaacs/github/issues/302
AnneTheAgile

4
와우, 대단하고 잘 개발 된 인기있는 서비스가 영원히 사용되는 기본 기능을 지원하지 않는다는 것은 놀라운 일입니다.
Michael

1
@PeterByfield 이것이 유일한 공식 해결 방법이므로 지금은이를 고수하겠습니다.
VonC

9

나는 조직 을 사용 하여 repos를 주선합니다. 이를 통해 깨끗한 묘사와 명확한 조직이 가능하며 필요한 경우 공유 할 수 있습니다. 예를 들면 다음과 같습니다.

내 조직

  • JMR-iOS (iOS 저장소)
  • Jmr-Work (작업 저장소)
  • 사용자 계정 (pers repos)

Enterprise Cloud 계정으로 업그레이드 하지 않는 한 모든 조직 리포지토리는 공개입니다 ($ 25 / 월)


1
개발자 계정으로 업그레이드하더라도 모든 조직 리포지토리는 공개됩니다. 따라서 조직 계획을 엔터프라이즈 또는 팀으로 업그레이드해야하는 경우 (현재 가격은 한 달에 25 유로에서 시작하여 5 명의 개발자를 허용하거나 한 달에 21 달러의 엔터프라이즈를 사용할 수 있음)
Curious Mind

잘 잡아! 현재 스키마를 반영하도록 업데이트했습니다. 지금 이것을 사용하고 있습니다.
J-Dizzle

4

이것은 헤즈 업만큼 답이 아닙니다.

다음은 사용자를위한 무료 개인 저장소의 발표로 인해 조직을 활용 한 구조화의 부작용 중 하나가 밝혀졌습니다. https://blog.github.com/2019-01-07-new-year-new-github/

조직 개인 저장소는 여전히 무료가 아닙니다. 따라서 조직을 사용하여 저장소를 분리하면 필요한 경우 조직에서 무료 개인 저장소를 사용할 수 없게됩니다.


2

우선 GitHub에서 repos에 주제 형식으로 태그를 지정할 수 있습니다. 예이!

그러나 그것이 더 큰 문제를 해결한다고 생각하지 않습니다. 이를 위해 최상위 폴더 시스템 (각 프로젝트가 하나의 저장소에있는 폴더)을 시도했습니다. 또한 프로젝트 시스템 당 하나의 브랜치를 시도했습니다 (각 프로젝트는 새 브랜치에 있습니다). 마지막으로 각 프로젝트를 개별적으로 당기고 밀 수 있습니다! 그러나 이상적이지 않습니다.

subversionmercurial 과 같은 다른 버전 제어 시스템을 살펴볼 수도 있습니다 . 필요한 경우 Mercurial을 Bitbucket에서 호스팅 할 수 있으며 Facebook은 " 멀티 프로젝트 저장소 "에 대한 지원도 검토하고 있습니다.

개인적으로 https://hg.openjdk.java.net/ (또는 http://hg.netbeans.org/ ) 시스템을 좋아합니다 . 여기서 폴더 설정이 있고 각 프로젝트가 엔드 포인트에서 호스팅됩니다. 이를 달성하는 가장 좋은 방법은 프로젝트 구조 (예 : https://mvnrepository.com/ 또는 https://www.npmjs.com/ )가 있는 웹 사이트 (GitHub에서 수행 가능)를 만드는 것 입니다.


2

폴더를 시뮬레이트 할 수있는 한 가지 방법은 리포지토리 설명 끝에 쉼표로 구분 된 태그를 추가하는 것입니다. 그런 다음 GitHub '리포지토리 찾기 ...'필터가 저장소 설명에 표시되므로이 태그로 저장소를 검색 할 수 있습니다! 예를 들면 :

MyRepo : 몇 가지 멋진 작업을 수행합니다 [컴퓨터 비전, 머신 러닝, 파이썬]

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.