2012-05-29 3 views
1

Я совершенно новый и для git, и для npm, но я понимаю основы, по крайней мере, я думаю, что понимаю.
В любом случае я опишу, как я думаю работать, но я думаю, что есть лучшие способы сделать.Лучший способ использовать npm и git?

  • Я создаю корневую папку с моим модулем node.js.
  • Я добавляю файл package.json и настраиваю имя и версию.
  • git init в этой папке с корнем.
  • Затем git add ., чтобы добавить все файлы в исходный элемент управления.
  • Обязательно. Это будет моя версия 0.0.1. Я не знаю, как установить это в git.
  • npm publish
  • И это все для первого цикла.

Теперь для следующих мало изменений, а не версии:

  • меняет файл.
  • Я изменяю версию в package.json до 0.0.2.
  • I git commit.
  • сделано.
  • То же самое для других небольших изменений, но не меняйте версию.

Теперь для следующей смены версии:

  • меняю файлы
  • изменить версию к следующему.
  • I git commit.

Мне нужна ссылка между версией npm и версией git. Как это сделать?

+0

Каковы наилучшие методы использования git с npm? –

+1

Вам не нужно постоянно менять версию с каждым изменением; фиксировать так часто, как вам нравится, а затем обновить версию в 'package.json', когда пришло время снова« npm publish ». Вы можете использовать 'git tag' для записи того, что произошло в. – Ashe

+0

Вам нужно будет «npm publish» снова, когда вы хотите, чтобы изменения, которые вы совершили, были «npm install» в мире. – hurrymaplelad

ответ

2

Лучше всего добавить

node_modules/* 

к .gitignore :)

GIT является система управления версиями и НПМ пакет Managment, игнорировать такие вещи, как родные пакеты, которые вы используете, и вот и все все ресто или «реальный» код должен перейти в модуль. Также, если у вас есть какие-либо файлы конфигурации, такие как database.json, введите thme в игнор и введите в образец репо, как database.json.sample

Thats it! :>

Вы меняете версию проверки npm только тогда, когда у вас мало комиксов и изменений функций :), поэтому он является эксклюзивным.

+0

на данный момент я создаю проект, в котором есть 3 разных папки: клиент, сервер и общий. Причина, по которой я их использую, заключается в том, что я использую qooxdoo (http://qooxdoo.678.n2.nabble.com/Reusing-server-side-code-in-the-client-side-amp-amp-how-to-get -rid-оф-требует в-nodejs-suggestin-td7452919.html). Таким образом, 3 папки будут управляться отдельно git, общие и серверные папки также будут управляться npm. Это становится немного запутанным и, возможно, излишним. Каково ваше мнение? –

+0

Overkill. Если у вас есть «общая» папка между двумя приложениями, она почти всегда заканчивается адским версированием. –

+0

то что я делаю? Я не хочу в конечном итоге писать один и тот же код. Может быть, лучше включить три папки вместе, а затем объединить их вместе, не так ли? то у меня была бы такая же версия для обеих трех папок. Версия npm для общего доступа и сервера может не всегда совпадать. –