2016-12-01 14 views
2

gitを使ってすべての作業をサーバに提出する必要がある学校でコーディングしています。各割り当てには独自の.gitディレクトリを持つ独自のフォルダがあります。Gitでサブモジュールの内容を強制的に追加する

親フォルダを自分のgithubにプッシュしようとしていますが、プッシュしてもサブモジュールと見なされるため、フォルダ内のコードは実際にアップロードされません。私はすべての.gitフォルダを無視する.gitignoreファイルを作成しようとしましたが、うまくいきませんでした。

私が見た唯一の解決策は、gitubにプロジェクト内の変更をプッシュしたい場合や、親ディレクトリの内容を2番目のディレクトリに同期させてから内側にあるすべての.gitフォルダを削除してから押してください。

手動でgithubにプッシュするためだけに私の作品のコピーであるディレクトリを作ることなく、手動で各フォルダをプッシュせずにきちんとgithubにプッシュする方法はありますか?

+0

"手動で各フォルダをプッシュする"の何が問題になっていますか?それぞれの割り当てが他のものと無関係であると仮定すると、これはGitのために最適です。プロジェクトごとに1つのリポジトリ。古い割り当てを頻繁に更新しますか? 'assignment5/'を押して' assignment4/'を通して' assignment1/'が変更されていない場合、' course-assignments/'を押すのはどういう違いがありますか? – Chris

答えて

2

find -name .git -execdir git push \; 

はそれを行うだろう、githubのにすべてをプッシュします。

あなたが本当にサブモジュールにパンチスルーしたい場合は、内容ではなく、サブモジュールを追加することにより、リポジトリをバイパスすることができます:

git rm -rf --cached path/to/submodule  # to clear out any submodule entry 
git add path/to/submodule/. 

とGitはどのようレポにサブモジュールとして扱いません。もっと。今度は2つののリポジトリでその内容を追跡します。 I've seen this beforeしかし、それは私が見ることができる具体的な利益のための多くの仕事のように思えます。 Here's another way to go about it、サブモジュール境界とワークフローをほとんど損なわずに維持しますが、メインモジュールのブランチにサブモジュールをプッシュします。

関連する問題