0

私はEclipseを使ったかなり単純な「C」プロジェクトを持っています。私はこれを git の紹介として使用しており、eGit Eclipse プラグインを持っています。範囲がかなり単純な場合、このプロジェクト。プラットフォームに依存しないソース ファイルと、プラットフォームに依存するソース ファイルがあります。私はそれらを次のように整理しています:

    src/
        core/      # platform independent code
            file1.c, ... fileN.c
        interface/ # platform dependant code
            fileA.c ... fileZ.c

コードは、最終的には Linux (少なくとも RedHat)、osx、および Windows で実行されるはずです。これらはすべて「コマンド ライン」実行可能ファイルですが、インターフェイス コードはプラットフォーム間でまったく異なります。たとえば、私が PAM (Pluggable Auth Modules) モジュールを作成していた場合、Red Hat は linuxPAM を使用し、OSX は OpenPAM を使用し、windows は PAM をまったく使用しません (私の知る限り、その理由はありません)。PAM インクルード ファイルとライブラリは異なります。Windows は PAM 以外の処理を行います。

Eclipse と git がこれに役立つことを願っています。私の考えは、各OSタイプにgitの「ブランチ」を使用することです。これを試してみましたが、奇妙な状況に遭遇したため、これを投稿しています。

これは、RedHat バージョンを git "Master" ブランチとして開始しました。Master から、linux、osx、windows の 3 つのブランチを作成しました。私は Windows ブランチで作業を開始し、その後休暇を取りました。戻ってきたとき、Linux ブランチを取得しましたが、Windows の変更によって「汚染」されていました。休暇前にすべてのウィンドウの変更を確認したと思いました。

質問:

  1. ブランチはマルチプラットフォーム プロジェクトを行う正しい方法ですか?
  2. Eclipse の「.project」ファイルとその他のメタデータ ファイルをソース管理下に置く必要がありますか?

ありがとう

4

2 に答える 2