рдПрд╕рд╡реАрдПрди рд╕рдВрд╢реЛрдзрди рд╕рдВрдЦреНрдпрд╛ 1 рд╕реА 7.7 рдХреЛрдб рдореЗрдВ

рд╢реБрдн рджреЛрдкрд╣рд░

рдореИрдВ рдПрд╕рд╡реАрдПрди рдХреА рдХрд╛рд░реНрдп рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╕реЗ рд╕рдВрд╢реЛрдзрди рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЕрдиреНрдп рдореВрд▓реНрдпреЛрдВ рдХреЛ 1 рд╕реА 7.7 рдХреЛрдб рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рд▓реЗрдЦ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдЦрдХ рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИред

рдкреНрд░рд╛рдЧрд┐рддрд┐рд╣рд╛рд╕
рдПрдХ рдордзреНрдпрдо рдЖрдХрд╛рд░ рдХрд╛ рдЯреНрд░реЗрдбрд┐рдВрдЧ рдиреЗрдЯрд╡рд░реНрдХ (рд▓рдЧрднрдЧ 150 рд╕реНрдЯреЛрд░), рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдПрдХ рдЫреЛрдЯреА рдЯреАрдо, рд╣рдо 1 рд╕реА 7.7 рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рджреБрдХрд╛рдиреЛрдВ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рд╣реИрдВред
рдЗрд╕рдореЗрдВ Collabnet Subversion SVN рд╕рд░реНрд╡рд░, TurtoiseSVN рдХреНрд▓рд╛рдЗрдВрдЯ, 1C gComp рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ / рдбрд┐рдХрдореНрдкрд╛рдЗрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред 1Snaya рдЖрдзрд╛рд░ рд╣реИ (рд╣рдо рдЗрд╕реЗ "рдХрд╛рд░реНрдмрди рдХреЙрдкреА" рдХрд╣рддреЗ рд╣реИрдВ) рдЬрд╣рд╛рдВ рд╕реЗ рд╣рдо рдЕрдкрдбреЗрдЯ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рджреБрдХрд╛рдиреЛрдВ рдХреЛ "рдлреЗрдВрдХ" рджреЗрддреЗ рд╣реИрдВред ConfStarter рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдЯреЛрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдлрд╝рдВрдХреНрд╢рдВрд╕ (рдСрдЯреЛ-рд▓реЙрдЧрд┐рдВрдЧ) рдФрд░ рдлрд╝реЙрд░реНрдореЗрдЯрд┐рдВрдЧ рдХреЛрдб рдФрд░ рдмреИрдЯрдХреЙрдо рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ GComp рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рдЬрд╛рд╡рд╛ рдкрд╛рд░реНрд╕рд░ рд╣реИрдВ:
рдЬрд┐рд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╡реЗ рд░рд╣рддреЗ рд╣реИрдВ, рдЙрд╕реЗ рдкреАрдПрдЯреАрдПрдЪ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рд╛рд░рд╛ рд╕рд╛рдорд╛рди 1 рд╕реА рдбреЗрдЯрд╛рдмреЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

рдХрд╛рд░рдг
рд╢рд╛рдпрдж рд╣реА рдХрднреА, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдШрдЯрдирд╛рдПрдВ рдереАрдВ - рдпрд╛ рддреЛ рд╡реЗ рдЧрд▓рдд рдЕрд╕реЗрдВрдмрд▓реА (рд╕рдВрд╢реЛрдзрди) рдлреЗрдВрдХ рджреЗрдВрдЧреЗ, рдпрд╛ рдЧрд▓рдд рд╢рд╛рдЦрд╛ рд╕реЗ, рдпрд╛ рд╕реНрдЯреЛрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЖрджрд┐ред
рджреБрдХрд╛рдиреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛, рдЕрд░реНрдерд╛рддреН, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЬрд╛рдирдХрд╛рд░реА рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдХрд┐рд╕ рджреБрдХрд╛рди рдореЗрдВ рдХреМрди рд╕реА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЧрдИ рдереАред

рд╡рд┐рдЪрд╛рд░
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╣рдо TurtoiseSVN рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рдо рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рд╣рдореЗрдВ рдкрд╛рд░реНрд╕рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП "MaskFor Search" = "Value For Replace" рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓рддреА рд╣реИред
рдкрд╛рд░реНрд╕рд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЛрдб рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдЦреЛрдЬ рдореБрдЦреМрдЯрд╛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо рд╣реИред рдпрджрд┐ рдХреЛрдИ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрд╕рдХреЗ рдмрд╛рдж рдХреА рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ (рдЬреЛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдорд╛рди рд▓реМрдЯрд╛рддреА рд╣реИ) рдХреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ "рд╡реИрд▓реНрдпреВ рдлреЙрд░ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ" рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдХрд▓рди рдореЗрдВ рдФрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж, рдПрдХ рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдЯреЛрд░ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдкреНрд░рд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдФрд░ рд╕рдореЗрдХрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдПрдХ рдХрд╛рдордХрд╛рдЬреА рдкреНрд░рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, TurtoiseSVN рд╕реЗ " SubWCRev.exe " рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рддреАрди рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ:

Shablon.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рд╕рдВрд░рдЪрдирд╛ "MaskFor рдЦреЛрдЬ" = "рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдп" рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рд╣реИрдВ:
 ### getSVNRevision= Return "$WCREV$"; getSVNURL= Return "$WCURL$"; getSVNBuildTime= Return "$WCNOW$"; 

рдЖрдЙрдЯрдкреБрдЯ рдкрд░, рд╣рдореЗрдВ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓рддреА рд╣реИ, рдХреЗрд╡рд▓ рдЙрд╕реА рдореВрд▓реНрдп рдХреЛ $ рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреАрд╡рд░реНрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

рдХреАрд╡рд░реНрдб рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╣рд╛рдБ рдФрд░ рдкрдврд╝реЗрдВ ред

Parser AutoIt рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ред рдореИрдВрдиреЗ рдЙрд╕реЗ рд░реЗрдкреНрд▓рд░ рдХрд╣рд╛ред рдпрд╣ рджреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ:
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ "рдореВрд░реНрдЦ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛" рдХреЗ рд▓рд┐рдП ### рдореВрд▓реНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП - рддрд╛рдХрд┐ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдХреНрд░рдо рдХреЛ рднреНрд░рдорд┐рдд рди рдХрд░реЗрдВред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ shablon.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕рд╛рдордЧреНрд░реА:
 #include "file.au3" ;$CmdLine[0] -    . if $CmdLine[0] <2 Then MsgBox(0,"error!","Replacer have not all params!") Exit EndIf ;   Global $SettingsFilePath = $CmdLine[1] Global $WorkFilePath = $CmdLine[2] ;     if FileExists ( $SettingsFilePath) = 0 Then MsgBox(0, "Error", "Settings File is not exist!.") exit EndIf ;      if FileExists ( $WorkFilePath ) = 0 Then MsgBox(0, "Error", "Global Module File is not exist!.") exit EndIf ;   Local $Settingsfile = openFile($SettingsfilePath, 0) Local $T = FileRead($SettingsFilePath,3) if $T <> "###" Then MsgBox(0,"Error in the settings file!","Settings file not have in first line a secure code ###") Exit EndIf ;   While 1 ;    Local $line = FileReadLine($Settingsfile) ; ,   If @error = -1 Then ExitLoop ;  Local $SeparatorPos = StringInStr($line, "=") if $SeparatorPos = 0 Then ;   -   ContinueLoop EndIf ;         Local $find = getFindString($line) ;   Local $replace = getReplaceString($line) ;     ___ReplaceStringInFile($WorkFilePath,$find,$replace) WEnd FileClose($Settingsfile) ;  .        exit ;  "file.au3"    ,      . ;  ,   ,      ,       . Func ___ReplaceStringInFile($szFileName, $szSearchString, $szReplaceString, $fCaseness = 0, $fOccurance = 1) Local $iRetVal = 0 Local $nCount, $sEndsWith ; Check if file is readonly .. If StringInStr(FileGetAttrib($szFileName), "R") Then Return SetError(6, 0, -1) ;=============================================================================== ;== Read the file into an array ;=============================================================================== Local $hFile = FileOpen($szFileName, $FO_READ) If $hFile = -1 Then Return SetError(1, 0, -1) Local $s_TotFile = FileRead($hFile, FileGetSize($szFileName)) If StringRight($s_TotFile, 2) = @CRLF Then $sEndsWith = @CRLF ElseIf StringRight($s_TotFile, 1) = @CR Then $sEndsWith = @CR ElseIf StringRight($s_TotFile, 1) = @LF Then $sEndsWith = @LF Else $sEndsWith = "" EndIf Local $aFileLines = StringSplit(StringStripCR($s_TotFile), @LF) FileClose($hFile) ;=============================================================================== ;== Open the output file in write mode ;=============================================================================== Local $iEncoding = FileGetEncoding($szFileName) Local $hWriteHandle = FileOpen($szFileName, $iEncoding + $FO_OVERWRITE) If $hWriteHandle = -1 Then Return SetError(2, 0, -1) ;=============================================================================== ;== Loop through the array and search for $szSearchString ;=============================================================================== local $needReplace = 0 For $nCount = 1 To $aFileLines[0] ;        if $needReplace = 1 Then ;       $aFileLines[$nCount] = $szReplaceString ExitLoop EndIf ;     If StringInStr($aFileLines[$nCount], $szSearchString, $fCaseness) Then ;     ;$aFileLines[$nCount] = StringReplace($aFileLines[$nCount], $szSearchString, $szReplaceString, 1 - $fOccurance, $fCaseness) ;""  needReplace       .     . $needReplace = 1 $iRetVal = $iRetVal + 1 ;====================================================================== ;== If we want just the first string replaced, copy the rest of the lines ;== and stop ;====================================================================== If $fOccurance = 0 Then $iRetVal = 1 ExitLoop EndIf EndIf Next ;=============================================================================== ;== Write the lines back to original file. ;=============================================================================== For $nCount = 1 To $aFileLines[0] - 1 If FileWriteLine($hWriteHandle, $aFileLines[$nCount]) = 0 Then FileClose($hWriteHandle) Return SetError(3, 0, -1) EndIf Next ; Write the last record and ensure it ends with the same as the input file If $aFileLines[$nCount] <> "" Then FileWrite($hWriteHandle, $aFileLines[$nCount] & $sEndsWith) FileClose($hWriteHandle) Return $iRetVal EndFunc ;  Func openFile($FilePath,$mode) Local $file = FileOpen($FilePath, $mode) If $file = -1 Then MsgBox(0, "Error", "Unable to open file." $FilePath) exit Else Return $file EndIf EndFunc ; ,  ,    Func getFindString($inString) Return StringLeft($inString, StringInStr($inString, "=")-1) EndFunc ;  ,    Func getReplaceString($inString) Return StringRight($inString, StringLen($inString)- StringInStr($inString, "=")) EndFunc 

рдЗрди рд╕рднреА рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ " getRevision.bat " рдирд╛рдордХ рдПрдХ рдмреИрдЯрдирд┐рдХ рдмрдирд╛рдпрд╛, рдЬрд┐рд╕рдореЗрдВ рдкреИрд░рд╛рдореАрдЯрд░ рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд╕рд╛рде рд╣реИ рдЬрд╣рд╛рдВ рд╡реИрд╢реНрд╡рд┐рдХ рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд┐рдд рд╣реИ (рдпрд╣ BUILD рдпрд╛ REPO рд╣реИ)ред
GetRevision.bat рдХреА рд╕рд╛рдордЧреНрд░реА:
 REM         if not exist .\REPO ( echo FAIL: REPO folder isn't exist! pause exit /b 1 ) REM  -. if not exist "%~dp0\shablon.txt" ( echo FAIL: Shablon isn't exist! pause exit /b 2 ) REM  SubWCRev.exe,     "c:\Program Files\TortoiseSVN\bin\SubWCRev.exe" .\REPO "%~dp0\shablon.txt" .\ReplacerSettings.txt -f REM  ,       "%~dp0\Replacer.exe" ".\ReplacerSettings.txt" "%1\.1s" REM     del ".\ReplacerSettings.txt" 

рдХреЙрд▓ getRevision.bat Build.bat рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЪреВрдВрдХрд┐ Build.bat рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ BUILD рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкреНрд░реА-рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ getRevision.bat рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдорд╛рдиреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд╕рд╛рде REPO рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдФрд░, рддрджрдиреБрд╕рд╛рд░, рдмрджрд▓рд╛рд╡ SVN рдореЗрдВ рдирд╣реАрдВ рдЖрддреЗ рд╣реИрдВред рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рд╕рд╣рдХрд░реНрдорд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдз рдкрд░, рдПрдХ рдЕрд▓рдЧ рдмреИрдЯ'рдирд┐рдХ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ - ompileSVN.bat
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдирд╛рдордХрд░рдг рд╕реЗ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдореВрд▓ рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рдВрдХрд▓рди рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА:
 @echo   SVN   ... @echo off call getrevision.bat .\REPO @echo     REPO  1cv7.compile.md... "%GCOMP_PATH%\gcomp" -c -D .\REPO -F 1cv7.compile.md>.compile.log 
рдХрдВрдкрд╛рдЗрд▓.рдмрдЯ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд░рд╣реЗ

рддрд╛рдХрд┐ рдкрд╛рд░реНрд╕рд░ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реЛ, рд╣рдо рд╡реИрд╢реНрд╡рд┐рдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ "рдбрдореА" рдлрд╝рдВрдХреНрд╢рди рдбрд╛рд▓рддреЗ рд╣реИрдВ
 //-------------------------------------------------  getSVNRevision()   0;  //-------------------------------------------------  getSVNURL()   0;  //-------------------------------------------------  getSVNBuildTime()   0;  //------------------------------------------------- 


рдкрд░рд┐рдгрд╛рдо
рдпрджрд┐ рдЖрдк CompileSVN.bat рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛рдУрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:
(рдХреБрдЫ рдЖрдВрдХрдбрд╝реЗ рдмрджрд▓реЗ рдЧрдП):
 //-------------------------------------------------  getSVNRevision()  Return "5135";  //-------------------------------------------------  getSVNURL()  Return "https://:/svn/trunk";  //-------------------------------------------------  getSVNBuildTime()  Return "2013/01/22 10:35:15";  //------------------------------------------------- 

рд╕рд╛рде рд╣реА, рд╕реНрдЯреЛрд░ рд╕реЗ рдбреЗрдЯрд╛ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реИрд╢реНрд╡рд┐рдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЬреЛрдбрд╝реА рдЧрдИ рдереАред
glVygruzitMD_INFO
  MD_INFO()   = "";  .( () + "1CV7.MD", , , , , , );  ;  = ( "" ); .( "###MD Info" ); .( "SVN_Revision: " + getSVNRevision() ); .( "SVN_URL: " + getSVNURL() ); .( "SVN_BuildTime: " + ( getSVNBuildTime(), "/", "." ) ); .( "MD_UpdateTime: " +  ); .( "### : " ); .( ": " + ( . ) ); .( ": " + ( . ) );  .( _() + "\" + ( "MDInfo", "" ) );  ;  

рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХреА рдЧрдИ рд╣реИ (рдХреБрдЫ рдбреЗрдЯрд╛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ):
 ### MD Info SVN_Revision: 5137 SVN_URL: https://:/svn/branches/_ SVN_BuildTime: 2013.01.21 13:45:44 MD_UpdateTime: 2013.01.22 05:02:52 ### : : _ : 24 

рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдХреЗ рд▓рд┐рдП рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд┐рд░ рдПрдлрд╝рдЯреАрдкреА рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд╣рд╛рдВ рд╕реЗ, рд╣рдорд╛рд░рд╛ рдЖрдзрд╛рд░ "рдХрд╛рд░реНрдмрди рдХреЙрдкреА" рдЗрди рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХрддреНрд░ рдХрд░реЗрдЧрд╛ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд▓рд┐рдЦ рджреЗрдЧрд╛ред

рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рдореВрд╣рд┐рдХ рдЕрджреНрдпрддрди рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдЗрдиреЛ рд╕реЗрдЯрдЕрдк рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ - рд╡рд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ рдФрд░ рдПрдХ рдЕрдЪреНрдЫреА рдорджрдж рд╣реИред

рдЫреЛрдЯреЗ рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЗ рд╕рд╛рде, рдЙрдкрд░реЛрдХреНрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

Source: https://habr.com/ru/post/In166769/


All Articles