Git для наукових робіт: що насправді працює зі співавторами

Ігноруйте правила, право власності на главу, повідомлення про фіксацію, приватні віддалені пристрої та те, як дослідницький робочий простір із справжнім Git, розгалуженнями та контрольними точками штучного інтелекту дозволяє відновлювати документи, не роблячи Git другою роботою.

Дослідники вже використовують Git для коду. Документи дуже схожі на код: простий текст, включає, будувати непотріб. Розмістити рукопис у сховищі менш дивно, ніж це звучить, як тільки ви спробували це один раз.

Ігноруйте сміття

Розумний .gitignore для LaTeX:

*.aux
*.log
*.out
*.toc
*.synctex.gz
*.bbl
*.blg
*.fdb_latexmk
*.fls

Зафіксуйте .tex, .bib, цифри, які ви не можете повторно створити, і файл класу, якщо цього вимагає університет. Пропустіть фіксацію кожного PDF-файлу, якщо цього не захоче журнал двійковий файл в архіві.

Якщо ваш редактор запускає для вас Git, перевірте, чи збираються кеші та PDF проміжні продукти ігноруються. Потік порожнього “шуму” фіксується з файлів aux робить колоду нікчемною. Ви перестаєте це читати, і тоді історія не допоможе ти, коли щось ламається.

Власні файли, а не рядки

Двоє людей в одному абзаці - це злиття болю. Віддайте перевагу розділу або розділу власність. Використовуйте запити на підключення, коли група достатньо велика для перегляду насправді допомагає.

Живе багатокористувацьке введення в одному буфері є іншим інструментом (браузер LaTeX редактори). Співпраця Git повільніша та більш чітка: розгалуження, надсилання, перегляд. Це добре працює, коли вам потрібен паперовий слід. Коли троє людей повинні ввести абстрагувати разом сьогодні вдень, вибрати щось інше.

Повідомлення фіксації в майбутньому ви можете читати

«Полагодити речі» марно за три місяці. «Переписати споріднену роботу про трансформатори» достатньо. Два шари допомагають:

  1. Основні етапи, які ви називаєте: чернетки розділів, подання, готовність до камери.
  2. Контрольні точки безпеки: часті знімки, тому поганий день можна відмінити.

Якщо контрольні точки вашого редактора після успішної компіляції або після того, як ви припинили вводити текст, розглядайте їх як підлогу, а не єдину історію. Напишіть справжнє повідомлення, коли a розділ земель або проект переходить до співавторів.

Приватні пульти

Неопублікована робота належить до приватних проектів GitHub або GitLab. Випускний і лабораторні кроки — це коли люди втрачають доступ до випадкових облікових записів хмарних редакторів. Пульт дистанційного керування ви керуєте резервною копією.

Push, коли у вас є мережа. Не чекайте ночі перед кінцевим терміном виявити, що пульт дистанційного керування ніколи не підключався.

Локальна компіляція, віддалене резервне копіювання

Більшість тижнів цикл виглядає так: редагуйте та компілюйте офлайн, надсилайте, коли ви мати мережу. Вам не потрібен живий сеанс браузера, щоб просто вводити текст.

Що ви хочете від інструментів:

  • кожен проект уже є справжнім репо Git (без забутого git init)
  • автоматичні контрольні точки після успішної компіляції та простою редагування
  • етап, порівняння, відхилення та відновлення одним клацанням миші в тій же програмі, що й редактор і PDF
  • GitHub необов’язковий для віддалених пристроїв; історія вже працює на диску
  • форк цілого проекту з повною історією для паралельного експерименту (ризиковано методи, переписати, альтернативне резюме), поки копія подання залишається на місці
  • Редагування штучного інтелекту, якщо ви ввімкнете їх, контрольна точка спочатку і тільки через схвалення диф

Oleafly створено так, що спосіб: звичайні папки, справжній .git, автоматичні контрольні точки, які іменують файли, які переміщено, панель керування джерелом із редагованими відмінностями робочого дерева, відновити після підтвердити, необов’язково GitHub public/push/pull з ahead/behind, розгалуження проекту з лінії в бібліотеці. Термінал git log відповідає програмі, оскільки це той самий репозиторій. Контрольна точка штучного інтелекту, коли ви її використовуєте, приземляється там же історію, з якої ви відновлюєте.

Ви можете наблизити частини цього за допомогою обережної звички та окремого Git клієнт. Різниця в тому, чи історія є тим, що ви створили та пам’ятаєте, або те, що дослідницький робочий простір передбачає в перший день поруч із SyncTeX і компілювати.

Що Git не виправляє

Git не замінить коментарі PI, який відкриває лише PDF-файли, і не замінить вирішити, чия реферат правильна. Двійкові фігури все ще погано зливаються, тому тримайте вони невеликі, віддають перевагу ділянкам, які можна відновити, і домовляються про власність на ранній стадії.

Для співавторів, які відмовляються від Git, експортуйте PDF або DOCX для перевірки та збережіть .tex як джерело правди. див співавтори, які розмовляють лише Word.

Мінімальна практика

  1. Одне репо на кожну роботу чи дисертацію, а не одне мегарепо на всю вашу кар’єру.
  2. .gitignore для збирання сміття в перший день.
  3. Право власності на розділ, якщо редагує більше ніж одна особа.
  4. Етапні коміти з читабельними повідомленнями.
  5. Приватне віддалене підключення, перш ніж робота має значення.
  6. Відновлення перевірено один раз навмисно, тому перша аварійна ситуація не перша відновити.

Якщо дотримуватися цього списку, Git for papers здебільшого зникає в тло. Вам потрібна нудна надійність до закінчення терміну, а не друге хобі.

Всі пости