# SVN commit - verificare automata ANAF pe factura (pe main, fara branch) Verificat 30.09.2026 cu `svn status`. Working copy-ul are acum pe disc continutul branch-ului git `anaf-factura` (COMUN). **NU face `git checkout main` in COMUN inainte de svn commit** - ar readuce fisierele la versiunea veche si commit-ul SVN ar pleca gol. ## 1. svn add (fisiere noi) ``` cd /d D:\roa\ROAFACTURARE svn add COMUN\grafice\verificare1_verde.bmp COMUN\grafice\verificare2_verde.bmp COMUN\grafice\verificare1_rosu.bmp COMUN\grafice\verificare2_rosu.bmp COMUN\grafice\verificare1_gri.bmp COMUN\grafice\verificare2_gri.bmp ``` `verificare{1,2}_portocaliu.bmp` NU se folosesc - nu le adauga; le poti sterge de pe disc (sunt in git pe branch, dispar odata cu el). ## 2. svn commit tintit ``` svn commit -m "ROAFACTURARE 2.11.20 - verificare automata ANAF a clientului pe factura si aviz (cod fiscal verde/rosu, iconita gri cand ANAF nu raspunde)" ^ COMUN\programe\ofacturare_antet.prg ^ COMUN\programe\ocautare.prg ^ COMUN\programe\validare.prg ^ COMUN\clase\ofacturare.vcx ^ COMUN\clase\ofacturare.vct ^ COMUN\grafice\verificare1_verde.bmp COMUN\grafice\verificare2_verde.bmp ^ COMUN\grafice\verificare1_rosu.bmp COMUN\grafice\verificare2_rosu.bmp ^ COMUN\grafice\verificare1_gri.bmp COMUN\grafice\verificare2_gri.bmp ^ changelog_roafacturare.txt ``` `ofacturare.vc2` e ignorat de SVN (textul il regenereaza git_sync din binar). `.vcx`/`.vct` contin S2 + S2b (write-back verificat prin reconversie). **ATENTIE `ofacturare.vcx`:** sesiunea planului #13 lucreaza pe acelasi binar (`frm_facturare_articole2`). Daca a comis-o deja in SVN, `svn update` inainte da conflict pe binar - atunci nu comite binarul, da-i sesiunii #13 promptul din `prompt_integrare_13_anaf.md`. ## 3. Dupa svn commit - git fara branch In `D:\roa\ROAFACTURARE\COMUN` (skill `roa-git-svn-commit`, pasii lui au prioritate): 1. `git checkout main` apoi `roa_sync` -> aduce revizia SVN noua pe git main (inclusiv `.vc2` regenerat). 2. Verifica: `git diff 558ccda main -- programe clase/ofacturare.vc2 grafice` sa nu arate diferente de cod (doar ce a mai intrat din SVN intre timp). 3. `git branch -D anaf-factura`. ## INCHIS - probele de test (30.09): Marius a ales (c). Sterse de pe disc (`utile/Teste/anaf_factura/`, `utile/Teste/cache_anaf/test_s0_istoric_data_ceruta.prg`); in git apar ca `D` pe branch - ignora; fisierele nu exista pe main, deci `git checkout main` trece, iar ele dispar definitiv la `git branch -D anaf-factura`. Fara `git stash` in COMUN. ## (istoric) probele de test `COMUN\utile\Teste` e **svn:ignore** -> cele 24 de probe din `utile/Teste/anaf_factura/` si `utile/Teste/cache_anaf/test_s0_istoric_data_ceruta.prg` NU ajung pe main prin roa_sync si se pierd la `git branch -D`. Alege: (a) le salvezi inainte (copie in afara repo-ului), sau (b) commit git direct pe main doar pentru `utile/Teste/**` dupa roa_sync (exceptie de la regula "pe main scrie doar roa_sync" - decizia ta), sau (c) renunti la ele. ## EXECUTAT 30.09.2026 - OPRIT LA PASUL 5 - Pas 1: `svn status -u` - niciun fisier din lista invechit; fara conflict. - Pas 2-3: 6 bmp adaugate; `svn commit` tintit -> **revizia SVN 18238** (.prg x3, .vcx, .vct, 6 bmp, changelog). - Pas 4: `git checkout main` in COMUN (tree curat, a trecut) apoi roa_sync -> `sync SVN r18238` pe proiect si COMUN, push facut. - Pas 5: **DIFERENTE**: `git diff 558ccda main` arata `ofacturare_antet.prg` -389 linii (main=925 linii, SVN r18238=1314), `ocautare.prg` si `validare.prg` revenite, `ofacturare.vc2` -43 linii. Doar cele 6 bmp au intrat pe main. - Cauza (dovada): `git checkout main` a rescris pe disc cele 3 `.prg` cu versiunea veche (working copy SVN dupa commit), deci `svn status` arata acum `M` pe ocautare.prg, ofacturare_antet.prg, validare.prg (= reversul r18238), iar roa_sync a comis ca "sync r18238" acel continut vechi (commit-ul COMUN 1a24467 contine doar bmp-urile). Binarul `.vcx/.vct` e ok (svn status curat). Documentul avertiza doar pentru checkout INAINTE de commit. - Stare periculoasa: cele 3 .prg de pe disc sunt VECHI fata de SVN 18238; un `svn commit` pe ele ar anula lucrarea. Main git (pushat) are .prg/.vc2 vechi. - NEFACUT: pasii 6 (branch -D anaf-factura NU s-a rulat; branch-ul are codul corect, 558ccda) si 7. Remediere propusa (decide lead): restaurare cele 3 .prg din SVN (`svn cat -r 18238` sau revert) + regenerare .vc2, apoi roa_sync. - Stare finala: COMUN pe `main`, branch `anaf-factura` pastrat.