Tôi có thể sắp xếp kho lưu trữ vào các thư mục trên Github không?


158

Tôi chưa quen với git và những gì tôi đang làm bây giờ là tải lên tất cả các dự án gần đây của tôi dưới dạng kho lưu trữ cho github. Có rất nhiều dự án khác nhau như webdesign, chủ đề wordpress và các loại ứng dụng khác nhau. Và một số trong số này cũng thuộc về các dự án lớn hơn vì chúng là về thử nghiệm một số thứ như một ứng dụng khác.

Vấn đề là bây giờ tôi có một số lượng lớn các kho lưu trữ trực tuyến. Làm thế nào tôi có thể nhóm các kho github liên quan trong một cấu trúc thư mục? Có một tính năng cung cấp bất kỳ khả năng để đặt hàng và cấu trúc hoặc thậm chí các kho lưu trữ thẻ trên github?


1
@ user478212 Câu hỏi là về việc sắp xếp các kho lưu trữ, không phải các tệp trong một kho lưu trữ duy nhất.
danijar

"Thư mục" gần nhất sẽ là "dự án" ngày hôm nay (tháng 2 năm 2019): xem câu trả lời cập nhật của tôi bên dưới
VonC

"Dự án" không trực tiếp mô phỏng các thư mục. Một cách trực tiếp hơn để mô phỏng các thư mục có thể là sử dụng gắn thẻ mô tả, như được mô tả trong câu trả lời của tôi dưới đây.
peter554

Câu trả lời:


68

Trên chính GitHub, bạn không thể nhóm các repos của mình theo "thư mục", trừ khi bạn tạo các tổ chức .
Xem SublimeText , ví dụ, như một nhóm của tất cả các gói sublimeText repos.

Nhưng điều đó sẽ không hỗ trợ một tổ chức thư mục lồng nhau. Hiện tại (tháng 6 năm 2017), điều đó chỉ hỗ trợ một cấu trúc tổ chức nhóm lồng nhau .

Cập nhật tháng 2 năm 2019: bây giờ bạn có khái niệm về dự án :
Xem " Dự án do người dùng sở hữu, không gian làm việc cá nhân của bạn "

Bạn cũng có thể liên kết tối đa 5 kho lưu trữ với bảng dự án của bạn. Các kho lưu trữ liên kết sẽ giới hạn phạm vi tìm kiếm trong các kho lưu trữ được liên kết đó, vì vậy bạn có thể nhanh chóng thu hẹp mọi vấn đề mới mà bạn chưa thêm vào bảng dự án

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

GitHub cũng hỗ trợ các thẻ ngay bây giờ (ở dạng chủ đề ).


Câu trả lời gốc 2012:

Một giải pháp khác là để bạn xác định các kho lưu trữ tham chiếu các repos khác, được khai báo là các mô hình con .

Theo cách đó, khi bạn nhân bản một trong các repos (tham chiếu các repos khác), được gọi là "repos gốc", chúng sẽ được nhân bản trong thư mục riêng của chúng, với một thư mục con cho mỗi mô hình con.

Nó sẽ không hiển thị rõ ràng trên chính tài khoản GitHub của bạn (vì nó vẫn sẽ chứa một danh sách lớn các repos, thậm chí còn lớn hơn với các repos gốc), nhưng bằng cách nhân bản một repo cha, bạn sẽ lấy lại tất cả các mô hình con được liên kết trong đó.


Các vấn đề 302 đề cập trong các ý kiến của AnneTheAgile vào năm 2014 chỉ là tài liệu tham khảo bây giờ (tháng 11 năm 2018)tbnorth/github_repo_tags

Các chương trình python nhỏ trong kho lưu trữ này sử dụng API GitHub để có được một danh sách các hợp đồng mua lại của bạn. và thêm tên, mô tả và URL của họ vào một repo mới., theo mặc định được gọi là repo_tags. Ban đầu, mỗi vấn đề của nghiêm trọng, được gắn thẻ không được phân loại, nhưng bạn có thể gắn thẻ chúng theo ý muốn, sử dụng gắn thẻ vấn đề thường xuyên.

Khi chạy lại, repo_tags.py chỉ tạo ra các vấn đề cho repos. mà chưa được bao phủ bởi một vấn đề.


4
ok vì vậy tôi phải sử dụng nhiều tổ chức ... có lý do nào khiến bạn không thể cấu trúc đại diện của mình theo thư mục không?
danijar

4
@sharethis không có lý do mà tôi biết, ngoại trừ đây chưa phải là một tính năng được đề xuất bởi GitHub.
VonC

5
Danh sách mong muốn lưu ý; Thẻ cũng sẽ ổn cho tôi. github.com/isaacs/github/issues/302
AnneTheAgile

4
wow, không thể tin được rằng một dịch vụ phổ biến, phát triển tốt và phổ biến như vậy không hỗ trợ một tính năng cơ bản như vậy đã tồn tại mãi mãi.
Michael

1
@PeterByfield Đó là cách giải quyết chính thức duy nhất, vì vậy tôi sẽ gắn bó với điều đó ngay bây giờ.
VonC

9

Tôi sử dụng các tổ chức để sắp xếp repos. Điều này cho phép phân định rõ ràng và tổ chức rõ ràng, chín muồi để chia sẻ nếu cần. Ví dụ:

Tổ chức của tôi

  • Jmr-iOS (repos iOS)
  • Jmr-Work (Công việc repos)
  • Acct người dùng (Pers repos)

Tất cả các repos tổ chức đều công khai trừ khi bạn nâng cấp lên tài khoản Enterprise Cloud ($ 25 / tháng)


1
Tất cả các repos tổ chức đều công khai, ngay cả khi bạn nâng cấp lên tài khoản nhà phát triển. Vì vậy, nếu bạn cần nâng cấp kế hoạch tổ chức của mình lên doanh nghiệp hoặc nhóm (giá hiện tại bắt đầu từ 25 euro mỗi tháng và cho phép 5 nhà phát triển hoặc bạn có thể sử dụng doanh nghiệp từ 21 đô la cho mỗi người dùng, một tháng)
Curious Mind

nắm bắt tốt! Tôi đã cập nhật để phản ánh lược đồ hiện tại, tôi đang sử dụng cái này ngay bây giờ
J-Dizzle

4

Đây không phải là một câu trả lời nhiều như một cái đầu lên.

Một tác dụng phụ gần đây của việc cấu trúc các tổ chức sử dụng đã được đưa ra ánh sáng do thông báo sau về các repos riêng miễn phí cho người dùng: https://blog.github.com/2019-01-07-new-year-new-github/

Repos tổ chức tư nhân vẫn không miễn phí. Vì vậy, việc sử dụng các tổ chức để phân tách các repos sẽ dẫn đến việc tổ chức của bạn không thể sử dụng các repos riêng miễn phí, nếu đó là thứ bạn cần.


2

Để bắt đầu, bạn có thể gắn thẻ repos ngay bây giờ trong GitHub, dưới dạng chủ đề. Yay!

Nhưng tôi không nghĩ rằng nó giải quyết vấn đề lớn hơn. Đối với điều này, tôi đã thử một hệ thống thư mục cấp cao nhất (trong đó mỗi dự án là một thư mục trong một repo). Tôi cũng đã thử một chi nhánh cho mỗi hệ thống dự án (trong đó mỗi dự án nằm trong một chi nhánh mới). Điều cuối cùng này cho phép bạn kéo và đẩy từng dự án riêng biệt! Nhưng, không phải là lý tưởng.

Bạn cũng có thể xem xét các hệ thống kiểm soát phiên bản khác như lật đổđồng bóng . Mercurial cũng có thể được lưu trữ trên Bitbucket nếu bạn cần và Facebook thậm chí đang xem xét hỗ trợ cho " kho lưu trữ đa dự án ".

Cá nhân tôi thích hệ thống https://hg.openjdk.java.net/ (hoặc http://hg.netbeans.org/ ), nơi bạn có thiết lập thư mục và mỗi dự án được lưu trữ tại các điểm cuối. Cách tốt nhất để đạt được điều này là thông qua việc tạo một trang web (mà bạn có thể làm trong GitHub) với cấu trúc dự án của bạn (như https://mvnreposective.com/ hoặc https://www.npmjs.com/ ).


2

Một cách có thể để mô phỏng các thư mục là gắn các thẻ được phân tách bằng dấu phẩy vào cuối mô tả repo của bạn. Sau đó, bạn có thể tìm kiếm repos bằng các thẻ này, vì bộ lọc GitHub 'Tìm kho lưu trữ ...' trông trong mô tả repo! Một ví dụ:

MyRepo: Có một số thứ hay ho [thị giác máy tính, học máy, trăn]

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.