Tôi mới đến với thế giới của Git, GitHub và Heroku. Cho đến nay, tôi đang tận hưởng mô hình này nhưng đến từ một nền tảng với SVN, mọi thứ dường như hơi phức tạp với tôi trong thế giới của Git. Tôi đang đối mặt với một vấn đề mà tôi đang tìm kiếm một giải pháp.Git + GitHub + Heroku
Kịch bản:
1. Tôi đã thiết lập một dự án tư nhân mới trên GitHub. Tôi chia rẽ dự án riêng tư và bây giờ tôi có cấu trúc sau trong chi nhánh của tôi:
/project
/apps
/my-apps
/my-app-1
....
/my-app-2
....
/your-apps
/your-app-1
....
/your-app-2
....
/plugins
....
Tôi có thể cam kết mã trong Fork trên GitHub từ máy của tôi trong bất kỳ thư mục nào tôi muốn. Sau đó, chúng sẽ được quản trị viên của dự án kéo vào kho lưu trữ chính.
2. Đối với mỗi ứng dụng riêng lẻ trong thư mục ứng dụng, tôi đã thiết lập một ứng dụng trên Heroku là một Git Repo trong đó tôi đẩy các thay đổi của mình khi tôi hoàn thành câu chuyện của người dùng từ máy cục bộ. Tóm lại, mọi ứng dụng trong thư mục ứng dụng là một ứng dụng Rails được lưu trữ trên Heroku.
Vấn đề:
Những gì tôi muốn là khi tôi đẩy những thay đổi của tôi vào Heroku, họ có thể được cam kết vào ngã ba dự án của tôi trên GitHub là tốt, vì vậy, nó cũng có mã mới nhất tất cả các thời gian.
Vấn đề tôi thấy là mã trên Heroku là Git Repo trong khi các thư mục tôi có trên GitHub là một phần của Repo. Cho đến nay, những gì tôi đã nghiên cứu là có một cái gì đó được gọi là Submodule trong Git World mà có thể đến để giải cứu, tuy nhiên, tôi đã không thể tìm thấy một số hướng dẫn newbie.
Ai đó trong cộng đồng có thể chia sẻ suy nghĩ và giúp tôi xác định giải pháp của vấn đề này không?
Cảm ơn câu trả lời của bạn Ryan. Như bạn đã đề cập, submodules cần phải được tạo ra, tuy nhiên, tôi muốn biết nếu mọi submodule cần phải được lưu trữ riêng trên GitHub hoặc nó có thể nằm trong kho dự án là tốt. –
Lưu trữ chúng một cách riêng biệt sẽ là cách tốt nhất. –
Về cơ bản, chúng tôi không muốn lưu trữ chúng một cách riêng biệt, lý do chính là các kho lưu trữ không được công khai và do đó chúng tôi không muốn chia sẻ với mọi người. Ngoài ra, lưu trữ các kho lưu trữ riêng tư trên GitHub sẽ tốn tiền. –