Development 2.0
Ще викам „неволÑта“, така че помагайте – как да ÑƒÐ±ÐµÐ´Ñ Ð½Ñкого, че не е „полезно“ да Ñе deploy-ва и update-ва live машина от /trunk
-а ? „Полезно“ е изключително мека дума за това което имам предвид, по-Ñкоро Ð¿Ñ€Ð°Ð²Ð¸Ð»Ð½Ð¸Ñ Ð¸Ð·Ñ€Ð°Ð· е „лекомиÑлено и непрофеÑионално“. Как може на машина, коÑто Ñе ползва от иÑтинÑки потребители, да Ñложиш верÑиÑта от /trunk
-а, върху коÑто работÑÑ‚ вÑички разработчици ? Ðеобходимо ли е да Ñе обÑÑнÑва, че тази верÑÐ¸Ñ Ðµ „неÑтабилна“, защото Ñе работи ежедневно върху Ð½ÐµÑ ? За мен е очевидно до толкова, че чак не виждам как нÑкой може да не го разбере и Ñам. Защо не Ñе tag
-не или branch
-не една (отноÑително) по-Ñтабилна верÑиÑ, по коÑто не Ñе човърка вÑеки ден, и Ñ‚Ñ Ð´Ð° Ñе използва за live машината ? Така е Ñигурно, че Ñ‚Ñ Ð½Ñма да Ñтане жертва на нÑÐºÐ¾Ñ Ð¸Ð·Ñ†ÐµÐ¿ÐºÐ°, коÑто може да Ñе Ñлучи при ежедневното пращане на код. За мене вÑичко е криÑтално ÑÑно, и не проумÑвам защо други не го проумÑват. Това което Ñтава Ñега е егати Ð¸Ð·Ð²Ñ€Ð°Ñ‚ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ñ…Ð¾Ð´ – Ñтига Ñе до там, че разработчиците не commit-ват по повече от Ñедмица, от Ñтрах да не прецакат /trunk
-а от който Ñа deploy-нати live машините, и така да изцапат пейзажа. Извратена работа, нали ?
За финал, вÑе пак е по-добре да ползваш нÑкаква ÑиÑтема за контрол на верÑиите, дори и по извратен начин, отколкото да не ползваш въобше ;) Ð’Ñе пак 21 век Ñме, да пишеш Ñофтуеър без ÑиÑтема за контрол на кода изглежда като отживелица (от комунизма).
ЧеÑто Ñрещано Ñвление.
Обикновенно работата на QA е да теÑтват поÑледните верÑии. И да обÑвÑват че е доÑтатъчно Ñтабилна.
Конкретно аз Ð¿Ñ€Ð°Ð²Ñ Ñ‚Ð°ÐºÐ° – когато имам релийз дата Ñедмица предварително замразÑвам нещата за правене които нÑма да Ñтанат в рамките на датата или ще Ñтанат ама бъгави и Ñ‚.н. Ñлед което Ñе пуÑка един дълъг теÑÑ‚ и Ñе пипат Ñамо малките детайли без много-много нововъведениÑ. Тогава проектите Ñе разделÑÑ‚ – Ñтабилна и неÑтабилна. През Ñедмицата Ñе продължава работата по неÑтабилната верÑÐ¸Ñ Ð¸ Ñе пипа малко по-малко Ñтабилната (Ñ Ñ‚ÐµÐ½Ð´ÐµÐ½Ñ†Ð¸Ñ Ð²Ñе по-малко да Ñе пипа). Така на релийз датата (обикновенно гледам на Ñедмица да е) има една Ñтабилна верÑÐ¸Ñ (може Ñ Ð¿Ð¾-малко възможноÑти но СТÐБИЛÐÐ) и неÑтабилна (Ñ Ð¿Ð¾Ð²ÐµÑ‡Ðµ възможноÑти но ÐЕСТÐБИЛÐÐ). Само има малко Ñдове по обединÑването на промените между верÑиите, но Ñе Ñвиква (оÑвен ако не Ñа нÑкакви гигантÑки, но за това Ñи има фаза на проектиране където Ñе преценÑват внимателно нещата).
Comment by Peter — януари 13 @ 14:00