Hogyan szinkronizálni az SVN revíziószámot én ASP.NET weboldal?

szavazat
84

Veremtúlcsordulás egy felforgatás verziószámot alján:

svn felülvizsgálata: 679

Azt akarom, hogy az ilyen automatikus verzióarchiválási én .NET Web Site/Application, Windows Forms, WPD projektek / megoldásokat.

Hogyan alkalmazzák ezt?

A kérdést 01/08/2008 19:00
a forrás felhasználó
Más nyelveken...                            


7 válasz

szavazat
24

Meg tudod csinálni, ha a következő bárhol a kódot

$Id:$

Így például @Jeff tette:

<div id="svnrevision">svn revision: $Id:$</div>

és amikor ellenőrizte a kiszolgáló helyébe $ Id: $ a jelenlegi változat számát. Azt is találtam ezt a hivatkozást .

Van is $ Dátum: $ , $ Rev: $ , $ Revision: $

Válaszolt 01/08/2008 19:08
a forrás felhasználó

szavazat
29

Úgy néz ki, mint Jeff használ CruiseControl.NET alapján néhány lapozgatta a podcast átiratát. Úgy tűnik, ez automatikus telepítési képességeit forrás ellenőrzés a termelést. Lehet, hogy ez, ahol a behelyezés történik?

Válaszolt 01/08/2008 19:24
a forrás felhasználó

szavazat
9

$revés mások, mint ez a módosítások lesznek az egyes fájlokat, így azok nem változik, hacsak a fájlok változásait. A szám a weboldal (a legvalószínűbb, felteszem ide) az svn revíziószámot az egész projekt. Ez más, mint a Fájlverziók, amit mások már mutat.

Ebben az esetben azt feltételezzük, hogy CCNET húz a revízió száma a projekt és átírta része a weboldal ezzel a számmal. Bármilyen CI megoldás képesnek kell lennie arra, hogy ezt, ezt beállítani magam CCNET és Teamcity (bár nem weboldalakat, de az automatikus verziókövetés telepítési / összeszerelés verzió).

Annak érdekében, hogy ezt használja a CI megoldás, amely támogatja, vagy használja a fordítási folyamat (MSBuild / Nant) tárolja azt a verziót, és írja meg a fájlokat, mielőtt „telepítése” azt.

Válaszolt 13/08/2008 02:28
a forrás felhasználó

szavazat
26

Tesszük ezt xUnit.net az automatizált épít. Az általunk használt CruiseControl.net(és próbálunk ki TeamCity). A MSBuild feladat, hogy mi fut a folyamatos integrációs rendszer automatikusan módosítja a build számot számunkra, ezért a kapott építmények ZIP fájl tartalmazza a megfelelő verzióval sor DLL és EXEs.

A MSBuild fájlt tartalmaz UsingTask utalás DLL, amely nem szabályos kifejezés csere: (nyugodtan használja ezt DLL, mivel ez által lefedett MS-PL engedély is)

  <UsingTask
     AssemblyFile = "3rdParty \ CodePlex.MSBuildTasks.dll"
     TaskName = "CodePlex.MSBuildTasks.RegexReplace" />

Következő, kivonat a build számot, amely biztosítja automatikusan a CI rendszer. Ön is kap a forrás kontroll szolgáltatótól a forrás felülvizsgálati számot, ha szeretné, de találtunk a build # a CI rendszer jobban használható, mivel nem csak láthatja az integráció eredményeit a CI build számot, hogy azt is előírja a link vissza a changeset (ek), amely tartalmazta a build.

 <! - Cascading megpróbálja megtalálni a build számot ->

 <PropertyGroup állapot = " '$ (BuildNumber)' == ''">
   <BuildNumber> $ (BUILD_NUMBER) </ BuildNumber>
 </ PropertyGroup>
 <PropertyGroup állapot = " '$ (BuildNumber)' == ''">
   <BuildNumber> $ (ccnetlabel) </ BuildNumber>
 </ PropertyGroup>
 <PropertyGroup állapot = " '$ (BuildNumber)' == ''">
   <BuildNumber> 0 </ BuildNumber>
 </ PropertyGroup>

(Igyekszünk BUILD_NUMBER, ami ettől TeamCity, majd ccnetlabel, amely származó CC.net és ha sem jelen van, akkor alapértelmezés szerint 0, úgyhogy tudjuk tesztelni az automatizált szkriptet kézzel.)

Ezután van egy feladat, amely meghatározza a build számot a GlobalAssemblyInfo.cs fájlt, amit hivatkozó valamennyi projektünk:

 <Target Name = "SetVersionNumber">
   <REGEXREPLACE
       Minta = 'AssemblyVersion \ ( "(\ d + \. \ D + \. \ D +) \. \ D +" \)'
       Csere = 'AssemblyVersion ( "$ 1. $ (BuildNumber)")'
       Files = 'GlobalAssemblyInfo.cs' />
   <Exec Command = "attrib -r xunit.installer \ App.manifest" />
 </ Target>

Ez található a AssemblyVersion attribútumot, és felváltja a abcd verziószámot abcBuildNumber. Mi általában elhagyják a forrás bejelentkezett a fa az első három rész az építtető számot rögzített, és a negyedik nulla (fe, ma ez 1.0.2.0).

Az Ön fordítási folyamat, ellenőrizze, hogy a SetVersionNumber feladat megelőzi az építmények feladat. A végén, mi használja a Zip feladat becsomagolja a build eredményeket, hogy van egy története a bináris minden automatizált épít.

Válaszolt 16/08/2008 19:00
a forrás felhasználó

szavazat
10

@Balloon Ha TortoiseSVN, akkor a csomagolt SubWCRev programot. Lekérdezi egy működő példányt, és azt mondja, csak a legmagasabb változat számát. Kétségtelen, hogy ez úgy tűnik, hogy a kliens oldali megközelítés egy szerver oldali probléma, de mivel ez egy szép parancssori program, akkor képesnek kell lennie arra, hogy rögzítse a kimeneti használatra elég könnyen.

Válaszolt 15/09/2008 20:04
a forrás felhasználó

szavazat
5

Ahhoz, hogy hozzá @ BradWilson válasza: „Ön is kap a forrás kontroll szolgáltatótól a forrás felülvizsgálati számot, ha azt szeretné,”

Ha csatlakozni Subversion és MSBuild: MSBuild közösségi feladatok Project

Válaszolt 01/10/2008 12:51
a forrás felhasználó

szavazat
17

Ha használja ASP.Net MVC(például StackOverflow nem), írtam egy könnyen követhető 3-lépésre útmutató, hogyan kell automatikusan megkapja, és megjeleníti a legfrissebb SVN felülvizsgálatát . Az útmutató ihlette gondoltam magamban ezt a nagyon kérdés! : o)

Válaszolt 17/12/2008 11:17
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more