Лучший способ сохранить файлы конфигурации под SVN?

Я думаю, что вы можете использовать другую функцию, которая устанавливает отображение в false, когда setTimeout запускается в функции обработчика. Так что здесь функция hideShowing меняет отображение на false с помощью setTimeout. Это должно решить вашу проблему. Убедитесь, что вы очистили их в componentWillUnMount

  handler = () => {
     this.timer = setTimeout(() => {
         this.setState({ display: true });
         this.hideShowing();
      }, 1000);
  };

  hideShowing = () => {
   this.timer1=  setTimeout(() => {
         this.setState({
             display: false
         });
     }, 1000);
 }

 componentWillUnMount(){
     clearTimeout(this.timer);
     clearTimeout(this.timer1);
 }
12
задан duckyflip 6 October 2008 в 15:18
поделиться

6 ответов

Я управление версиями мои конфигурационные файлы, но я использую мерзавца вместо svn (который легче, когда у Вас есть несколько машин). У меня есть сценарий удара (названный install.sh), также под репозиторием, который или копирует или символьные ссылки файлы к их соответствующему местоположению на машине.

Таким образом, если я должен настроить на новой машине, я просто делаю клон мерзавца репозитория (который эквивалентен svn контролю), и выполненный мой install.sh настраивать мои файлы конфигурации в соответствующих местоположениях. Наличие install.sh вокруг средств, что я также храню первоначальный тракт файлов конфигурации, поскольку Вы указали, что хотели бы.

4
ответ дан 2 December 2019 в 23:20
поделиться

Это - то, что я реализовал:

У меня есть сервер, который делает rsync всех конфигураций в один каталог (скажите что/data/configs/hostname/{и т.д., httpd}.

У меня есть rsync, работающий каждый час для передачи изменений. как только rsync завершен, существует svnautocommit сценарий, который делает автоматическую фиксацию изменений. Таким образом, я могу откатывать к любому изменению или любой версии, я хочу.

Вы, возможно, должны были бы запланировать структуру каталогов SVN на основе своих требований.

2
ответ дан 2 December 2019 в 23:20
поделиться

Я делаю это для нескольких машин, в пределах от старого Соляриса 8 полей к Mac OS X, и у меня есть действительно простой макет:

В моем репозитории у меня есть следующее:

<root>/common
  /.emacs.d
  /.bash_common
  /scripts # platform-independent binary tools

<root>/linux
  .bashrc
  .emacs
  ...

<root>/solaris
  .bashrc
  .emacs
  ...

<root>/osx
  .bashrc
  .emacs
  ...

Каждая ОС homedirs имеет svn:externals ссылку на .emacs.d, .bash_common, и сценарии, таким образом, они не дублированы.

Кроме того, у меня есть .bash_hostconfig в Linux и solaris каталогах с определенной для хоста конфигурацией пути и таким, потому что у меня есть совсем другая установка на работе, чем я делаю дома (FC5-8 и RHEL3-5, в зависимости от того, где я).

Так, между этими вещами у меня есть довольно простой процесс для подъема и работы новой машины: Я просто проверяю / $platform во временный каталог и затем перезаписываю все в $HOME с теми файлами. Я не должен хранить первоначальный тракт, потому что это всегда - относительно $HOME этот путь.

0
ответ дан 2 December 2019 в 23:20
поделиться

Мы используем CVS для хранения конфигураций в структуре каталогов, которая является максимально плоской. Эта техника легко расширяется на SVN.

Затем нам настраивали Make-файл для использования экспорта CVS в:

  1. создайте копию структуры каталогов CVS без компонентов CVS,
  2. создайте структуру каталогов, требуемую для целевой машины в Вашем локальном каталоге, как будто Вы были в корневом каталоге на целевой машине, например./my_cvs_dir/etc/.. и./my_cvs_dir/usr/local/newapp/..,
  3. скопируйте файлы от структуры CVS до целевой структуры каталогов,
  4. создайте tarball для целевой структуры каталогов, и
  5. разверните tarball на целевой машине.

У нас также есть эти tarballs, настроенные в увеличивающейся специализации, например, 10 соль, Apache, определенное приложение, и т.д.

HTH

удачи,

Ограбить

0
ответ дан 2 December 2019 в 23:20
поделиться

Хорошо Вы могли сохранить все конфигурационные файлы под определенным деревом каталогов, одним подкаталогом на приложение. Так как большинство приложений должно иметь директиву для определения пути конфигурации, это - затем единственная вещь, которая будет изменена (или если Вы трудно кодировали файлы конфигурации, возможно, чему-то нравится, включают, поддерживается) на сервер.

И это дерево могло затем быть проверено в любой VCS, который Вы любите.

Для развертывания можно записать сценарий оболочки или такую вещь, которая инициализирует все для использования дерева файла конфигурации.

0
ответ дан 2 December 2019 в 23:20
поделиться

Поскольку Вы хотите центральное хранилище так или иначе, можно пойти для чего-то немного более сложного как Слабый. Вы администрируете и управление версиями файлы в сервере нажатия, затем rsync это клиентам. Объяснение подролей имеет некоторые примеры того, как структурировать дерево.

0
ответ дан 2 December 2019 в 23:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: