Arch: Git

From FreeCAD Documentation
(Redirected from Arch Git/ro)
This page is a translated version of the page WebTools Git and the translation is 31% complete.
Outdated translations are marked like this.

WebTools Git‏‎

Menu location
Arch → Utilities → Git
Workbenches
Arch
Default shortcut
None
Introduced in version
-
See also
None

Notă: Începând cu FreeCAD v0.17, acest instrument a fost eliminat din Arch Workbench și face parte acum din WebTools Workbench pe care îl puteți instala prin meniul Tools → Addons Manager.

Descriere

Această comandă permite administrarea documentului curent cu GIT. GIT este un sistem puternic de control al versiunilor de fișiere, care poate gestiona diferite versiuni ale fișierelor și să țină evidența modificărilor..

Git este un instrument complex, înainte de a folosi acest instrument să ia în considerare învățarea elementelor de bază, pentru a evita operațiile greșite care pot cauza pierderea datelor. O literatură abundentă despre GIT este disponibilă și este ușor de găsit pe internet.

Notă: Pentru a putea să utilizați această comandă pachetul gitpython trebuie să fie instalat pe sistemul dvs. Pe majoritatea distribuțiilor linux, gitpython este disponibil din depozitele standard de software ca gitpython sau python-git .

Cum se folosește

  1. Save the current active document
  2. Make sure the saved file is inside an existing git repository
  3. Select menu Arch -> Utilities -> Git

Opţiuni

  • Asigurați-vă că Report Window este deschis deoarece mesajele Git vor fi tipărite acolo.
  • Instrumentul Git se va deschide numai dacă fișierul curent este salvat într-un depozit Git. Poate fi într-un subdirector.
  • Butonul Log va afișa un dialog care prezintă cele mai recente înregistrări din jurnal.
  • Butonul Refresh va re-scana depozitul pentru fișierele modificate.
  • Butonul Diff va afișa diferențele dintre versiunea curentă a unui fișier selectat și versiunea anterioară stocată în depozit.
  • Butonul Select all va selecta toate fișierele care urmează să fie angajate.
  • Butonul Commit va angaja fișierele selectate. Asigurați-vă că ați scris un mesaj de comitere care descrie schimbările pe care le comiteți.
  • Butonul Pull' va downloada 'orice modificări noi în depozit de pe telecomanda selectată. Dacă fișierul deschis în prezent în FreeCAD este modificat printr-o tragere, un mesaj de avertizare vă va informa astfel încât să puteți salva din nou fișierul sau să îl salvați în altă parte.
  • Butonul Push va uploada cel mai recent comitet (e) pe telecomanda selectată.

Limitations

  • Instrumentul încă nu poate crea depozite noi. Trebuie să aveți deja un depozit local existent (FreeCAD va verifica dacă fișierul documentului curent se află în interiorul unui depozit Git)
  • Instrumentul nu poate schimba sau crea ramuri. Trebuie să faceți acest lucru manual cu instrumentele standard Git.

Abilitarea citirii umane a fișierelor diff for FCStd

FreeCAD Fcstd format de fișier este un format binar bazat pe zip, pentru care Git nu poate produce diferențe corecte. Aceasta înseamnă că nu puteți vedea ce s-a schimbat între o versiune și o altă versiune și că fiecare nouă versiune stocată în repozitoriul Git este o copie completă a fișierului.

Deși a doua problemă nu are în prezent o soluție, prima poate fi rezolvată cu un mic instrument disponibil din codul sursă FreeCAD, numit fcinfo . Poate fi spus lui Git să folosească utilitarul fcinfo pentru a tipări un raport prietenos cu oamenii despre un fișier FCStd și, atunci când este rugat să producă un diff între două fișiere FCStd, va produce o diferență între cele două rapoarte fcinfo. Rețineți că acesta este doar un feedback vizual, o copie completă a fișierului va fi în continuare stocată intern.

Examplu de diff produs cu fcinfo:

diff --git a/testhouse.FcStd b/testhouse.FcStd
index 08077b6..985b1d8 100644
--- a/testhouse.FcStd
+++ b/testhouse.FcStd
@@ -1,26 +1,25 @@
-Document: /tmp/43un09_testhouse.FcStd (442K)
-   SHA1: 67c1985a45d93cba57d5bf44490897aba460100d
+Document: /tmp/zfXoDd_testhouse.FcStd (370K)
+   SHA1: db1cb5fca18af7bfdca849028f40550df4d845cb
    Comment : This is a test house to showcase FreeCAD's BIM worflow and IFC export capabilities
    Company : uncreated.net
    CreatedBy : Yorik van Havre
    CreationDate : Fri May  9 12:05:54 2014 
    FileVersion : 1
    Id : 
-   Label : testhouse
-   LastModifiedBy : Yorik van Havre
-   LastModifiedDate : 2016-06-28T17:05:57-03:00
+   Label : testhouse2
+   LastModifiedBy : Yorik van Havre
+   LastModifiedDate : Sat Sep 13 20:46:36 2014
+
    License : CC-BY 3.0
    LicenseURL : http://creativecommons.org/licenses/by/3.0/
-   ProgramVersion : 0.17R7800 (Git)
-   TipName : 
+   ProgramVersion : 0.15R3989 (Git)
    Uid : 67e62d8a-6674-4358-92fe-615443be887a
-   Objects: (231)
+   Objects: (221)
        Annotation : Drawing::FeatureViewAnnotation
        Annotation001 : Drawing::FeatureViewAnnotation
        Annotation002 : Drawing::FeatureViewAnnotation
        Annotation003 : Drawing::FeatureViewAnnotation
-       Annotation004 : Drawing::FeatureViewAnnotation
-       Annotation005 : Drawing::FeatureViewAnnotation
        Array : Part::FeaturePython (9K)
        Box : Part::Box (2K)
        Building : App::DocumentObjectGroupPython
@@ -110,7 +109,7 @@ Document: /tmp/43un09_testhouse.FcStd (442K)
        Floor : App::DocumentObjectGroupPython
        Floor001 : App::DocumentObjectGroupPython
        Floor002 : App::DocumentObjectGroupPython
-       Frame : Part::FeaturePython (89K)

Fiecare fișier FreeCAD conține un număr de control SHA1, care se va schimba de fiecare dată când fișierul este salvat, chiar dacă nu s-au schimbat conținutul său. În concluzie fcinfo va tipări întotdeauna ceva, indiferent de schimbarea conținutul său.

Pentru a permite utilizarea fcinfo (numai Linux și Mac - TODO: adăugați instrucțiuni Windows)

Using fcinfo on a single Git repository

  1. Salvați fișierul fcinfo undeva în sistem
  2. Faceți-l executabil
  3. Creați un fișier .gitattributes în depozitul dvs. Git
  4. Adăugați următoarea linie în ea:
* .FCStd diff = fcinfo
*.FCStd diff=fcinfo
  • Add the following lines to the .gitconfig file in your home directory:
[diff "fcinfo"]
textconv = /path/to/fcinfo
  • Alternatively, if you want to invoke fcinfo with arguments (e.g., --gui) use this approach:
[diff "fcinfo"]
textconv = sh -c '/path/to/fcinfo --gui "$0"'XD

Note that if you are working in a collaborative project you may want to include the fcinfo tool in your repository, in that case the path is relative to your Git repository root directory.

Enabling fcinfo globally

If you are working on many projects that need fcinfo tool you can enable it globally for your user.

  • Create a $HOME/.config/git/attributes file and add the following line on it:
*.FCStd diff=fcinfo
  • Add the following lines to the $HOME/.config/git/config file:
    • It's equivalent command is git config --global diff.fcinfo.textconv "/path/to/fcinfo".
    • Arch Linux users using freecad package can use {{{1}}} since it's already installed on their system.
[diff "fcinfo"]
textconv = /path/to/fcinfo

Note that any configuration made in a repository basis overrides global configurations.