Arch Git/it


Arch Git.png Arch Git

Posizione nel menu
Arch → Utilità → Git
Ambiente
Arch
Avvio veloce
‏‎
Vedere anche


Nota: A partire da FreeCAD v0.17, questo strumento è stato rimosso dall'ambiente Arch e ora fa parte dell'ambiente esterno Webtools che è possibile installare tramite il menu Strumenti -> Addons Manager

Descrizione

Questo comando consente di eseguire il commit del documento attivo a un repository GIT. GIT è un potente sistema di controllo di versione del file, è in grado di gestire diverse versioni dei file e di conservare la traccia delle modifiche.

Git è uno strumento complesso, prima di utilizzare questo strumento considerare di imparare le sue basi, al fine di evitare operazioni errate che possono causare la perdita di dati. Su internet è disponibile e facile da trovare una abbondante letteratura su GIT.

Attuali limitazioni:

Note: Per essere in grado di utilizzare questo comando, sul sistema deve essere installato il pacchetto gitpython. Sulla maggior parte delle distribuzioni Linux, gitpython è disponibile nei repository software standard come gitpython o python-git.

Utilizzo

  1. Salvare il documento attivo corrente
  2. Assicurarsi che il file salvato è già parte di un repository git
  3. Selezionare il menu Arch -> Utilità -> Arch CommitGit.png Git

Opzioni

Arch Git panel.jpg

Attivare la leggibilità delle differenze per i file FCStd

Il formato dei file Fcstd di FreeCAD è un formato binario basato su zip, per il quale Git non può produrre differenze corrette. Ciò significa che non si può vedere cosa è cambiato tra una versione e l'altra, e anche che ogni nuova versione memorizzata nel repository Git è una copia completa del file.

Anche se il secondo problema attualmente non ha una soluzione, il primo può essere risolto con un piccolo strumento disponibile nel codice sorgente di FreeCAD, chiamato fcinfo. A Git può essere ordinato di utilizzare l'utilità fcinfo per stampare un rapporto human-friendly (leggibile dalle persone) di un file FCStd, e, quando gli viene chiesto di produrre un differenza tra due file FCStd, produce invece un diff tra i due rapporti fcinfo. Notare che questo è solo un feedback visivo, una copia completa del file rimane ancora memorizzata internamente.

Esempio di una differenza prodotta con 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) 

Ogni file di FreeCAD contiene un numero checksum SHA1, che cambia ogni volta che il file viene salvato, anche se non è stato cambiato nessun contenuto. Così fcinfo stampa sempre qualcosa, non importa se il contenuto cambia.

Per abilitare l'utilizzo di fcinfo (solo per Linux e Mac - Da fare: aggiungere le istruzioni per Windows)

  1. Salvare il file fcinfo da qualche parte nel sistema
  2. Renderlo eseguibile
  3. Creare un file .gitattributes nel proprio repository Git
  4. Aggiungere in esso la seguente riga:
*.FCStd diff=fcinfo
Online version: "http://www.freecadweb.org/wiki/index.php?title=Arch_Git/it&oldid=253041"

Navigation menu