論文を GitHub に投稿する
Init、補助ファイル、プライベート リポジトリ、共同作成者のマージを正常に保つ習慣を無視します。
論文を GitHub に投稿する
LaTeX 原稿はプレーン テキストであるため、Git に最適です。すべてのドラフトは戻ることができるコミットになり、すべての変更は行レベルの差分として表示され、GitHub ではオフサイトのコピーに加えて、共著者が現在の状態をプルする方法も提供されます。これらには高度な Git は必要ありません。論文には、おそらく 5 つのコマンドを一貫して使用する必要があります。
初期設定
git init# add a .gitignore for *.aux *.log *.out *.toc *.synctex.gzgit add main.tex refs.bib figures/git commit -m "Initial manuscript"gh repo create my-paper --private --source=. --pushこれをプロジェクト フォルダーで 1 回実行します。 .gitignore ステップは見た目よりも重要です。コンパイルのたびに .aux、.log、.out、.toc、および .synctex.gz ファイルが再生成され、それらをコミットすると実際の変更がマシンのノイズに埋もれ、共同作成者間で無意味なマージ競合が発生します。あなたが作成したものだけを追跡してください: .tex ソース、.bib データベース、図、および会場から提供されたクラス ファイルまたはスタイル ファイル。 PDF もビルド製品です。ほとんどのチームはそれを省略してローカルで再構築しますが、タグ付きリリースにそれを添付することは、提出されたバージョンを凍結する合理的な方法です。作品が公開されるまで、リポジトリを非公開にしておきます。未発表の原稿はインデックス対象ではありません。
共著者を正気に保つ習慣
「セクション 3 のイントロを改訂する」または「アブレーション テーブルを追加する」など、各コミットに 1 つの論理的な変更を加えます。そうすれば、歴史は新聞の物語として読み取られ、悪い編集は巻き添え被害を与えることなく元に戻すことができます。執筆セッションを開始する前にプルし、停止するときにプッシュします。マージ競合は、ブランチが離れて過ごす時間とともに増大します。共著者が共有ブランチをプルした後は、その共有ブランチを強制的にプッシュしないでください。これは、共同作成者の足元の歴史を書き換えてしまいます。大きなバイナリ成果物 (データセット、ビデオ) を紙のリポジトリに保管しないでください。アーカイブにリンクするか、別のデータ リポジトリを使用します。 Git は、あらゆるバイナリのあらゆるバージョンを永久に保存します。
LaTeX に特有の習慣の 1 つは、ソース行ごとに 1 つの文を書くことで、1 単語の編集がリフローされた段落ではなく 1 行の変更として表示されるため、差分が劇的に読みやすくなるということです。
Oleafly がどのように適合するか
すべての Oleafly プロジェクトはディスク上の通常のフォルダーであるため、これらのコマンドは変更されずにそのフォルダー上で動作します。アプリは、コンパイルが成功するたびに Git コミットを自動的に作成することもできるため、意図的なコミットの間にきめ細かいセーフティ ネットが提供されます。 Git 履歴 を参照してください。パッチ交換や章の所有権など、これに基づいて構築されたコラボレーション パターンについては、ライブ カーソルを使用しない共同編集 を参照してください。