livrare.ps1: fisierul de mesaj fara BOM
Out-File -Encoding utf8 in PS 5.1 scrie BOM, care ajungea ca prim caracter in mesajul de commit (ex. un mesaj despre "sync SVN"). Se scrie cu [IO.File]::WriteAllText si UTF8Encoding $false. Nota in scripturi-uzuale.md: mesajele catre git/svn din PowerShell trec prin fisier, UTF-8 fara BOM, LF. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014sNn6dmAimtyXkDU4frJrh
This commit is contained in:
@@ -22,3 +22,11 @@ refacut manual la fiecare interogare) si un wrapper care ruleaza `diag_spatiu.ps
|
||||
clientii, cu un rezumat pe un rand per server.
|
||||
|
||||
Fluxul SVN ↔ git din spatele lui `roa_sync`: `fluxul_svn_git.md`.
|
||||
|
||||
**Mesaje de commit din PowerShell catre `git`/`svn` (exe native): niciodata `-m $mesaj`.**
|
||||
PowerShell nu escapeaza ghilimele/backtick/`$` cand paseaza argumente catre un exe nativ - un
|
||||
mesaj cu `"..."` sparge comanda. Solutie: scrie mesajul intr-un fisier temporar si foloseste
|
||||
`git commit -F <fisier>` / `svn commit -F <fisier>`, cu textul **UTF-8 fara BOM**
|
||||
(`[IO.File]::WriteAllText($cale, $mesaj, (New-Object Text.UTF8Encoding $false))` - `Out-File
|
||||
-Encoding utf8` in PS 5.1 scrie BOM, care ajunge ca prim caracter in mesajul de commit) si
|
||||
**LF, nu CRLF** (`svn commit -F` refuza fisiere cu linii mixte CRLF/LF: `E135000`).
|
||||
|
||||
Reference in New Issue
Block a user