Использование Git для отслеживания Ruby на рельсах - PullRequest
1 голос
/ 16 мая 2009

Кроме файлов базы данных и журналов, есть ли другие файлы, которые не должны находиться в хранилище по соображениям безопасности?

Над проектом в основном будет работать я сам, однако код должен храниться в общем хранилище, которое будет доступно нескольким другим пользователям, если они захотят извлечь из него. Проект достаточно прост, поэтому я не слишком беспокоюсь о безопасности в моем реальном коде - это больше для защиты любых тестовых данных и т. Д., А также для создания «хорошей практики» в этом типе проекта.

1 Ответ

4 голосов
/ 16 мая 2009

Типичный файл .gitignore в контексте "ruby on rails" может выглядеть примерно так:

config/database.yml  
db/*.sqlite3
log/*.log
log/*.pid
tmp/**/*"

Но, как указано в статье " rorgitignore: .gitignore файлы, специфичные для Ruby on Rails ", вы также можете использовать .gitignore для добавления пустых каталогов.

Поскольку git отслеживает содержимое, а не файлы, он не сохраняет пустых каталоги, так как нет контента для отслеживания.

Это означает, что когда вы клонируете свой проект из git хранилища, это отсутствует log, tmp, lib и другие каталоги.

Этот небольшой скрипт исправляет это, поэтому git добавляет даже пустые каталоги

for DIR in `find . -type d | sed -re 's/\.\///g' | grep -v '^\.git'`; do
    [ `ls -a $DIR | wc -l` -le 2 ] && \
    echo Creating and git-adding $DIR/.gitignore && \
    touch $DIR/.gitignore && \
    git add -f $DIR/.gitignore
done

это просто вывод команд для добавления пустого файла .gitignore во все пустые каталоги в проекте git и git add -f 'em в репозиторий.


Если вы все еще сосредоточены только на основном файле .gitignore, вот более полный, из iCoreTech Research Labs

config/database.yml
*~
*.cache
*.log
*.pid
tmp/**/*
.DS\_Store
db/cstore/**
doc/api
doc/app
doc/plugins
coverage/*
db/*.sqlite3
*.tmproj
Capfile
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...