FreeCAD Logo FreeCAD 1.0
  • Englisch Afrikaans Arabisch Weißrussisch Katalanisch Tschechisch Deutsch Griechisch Spanisch Spanisch Baskisch Finnisch Philippinisch Französisch Galicisch Kroatisch Ungarisch Indonesisch Italienisch Japanisch Kabylisch Koreanisch Litauisch Niederländisch Norwegisches Bokmål Polnisch Portugiesisch Portugiesisch Rumänisch Russisch Slowakisch Slowenisch Serbisch Schwedisch Türkisch Ukrainisch Valencianisch Vietnamesisch Chinesisch Chinesisch
  • Funktionen
  • Herunterladen
  • Blog
  • Dokumentation
    Inhaltsverzeichnis Erste Schritte Benutzerdokumentation Das FreeCAD-Handbuch Dokumentation der Arbeitsbereiche Python-Dokumentation Dokumentation der C++ Programmierung Anleitungen Häufig gestellte Fragen Datenschutzrichtlinie Über FreeCAD
  • Mitwirken
    Wie kann ich helfen Sponsor Einen Fehler melden Einen Pull Request durchführen Jobs und Finanzierung Richtlinien für Beiträge Entwicklerhandbuch Übersetzungen
  • Community
    Verhaltenskodex Forum The FPA GitHub GitLab Codeberg Mastodon Matrix IRC IRC via Webchat Gitter Discord Reddit Twitter Facebook LinkedIn Kalender
  • ♥ Donate

Donate

$
SEPA-Informationen
Bitte richten Sie Ihre SEPA-Überweisung an:
Beneficiary: The FreeCAD project association
IBAN: BE04 0019 2896 4531
BIC/SWIFT: GEBABEBBXXX
Kreditinstitut: BNP Paribas Fortis
Adresse: Rue de la Station 64, 1360 Perwez, Belgium

While Stripe doesn't support monthly donations, you can still become a sponsor! Simply make a one-time donation equivalent to 12 months of support, and you'll gain access to the corresponding sponsoring tier. It's an easy and flexible way to contribute.

If you are not sure or not able to commit to a regular donation, but still want to help the project, you can do a one-time donation, of any amount.

Choose freely the amount you wish to donate one time only.

You can support FreeCAD by sponsoring it as an individual or organization through various platforms. Sponsorship provides a steady income for developers, allowing the FPA to plan ahead and enabling greater investment in FreeCAD. To encourage sponsorship, we offer different tiers, and unless you choose to remain anonymous, your name or company logo will be featured on our website accordingly.

from 1 USD / 1 EUR per month. You will not have your name displayed here, but you will have helped the project a lot anyway. Together, normal sponsors maintain the project on its feet as much as the bigger sponsors.

from 25 USD / 25 EUR per month. Your name or company name is displayed on this page.

from 100 USD / 100 EUR per month. Your name or company name is displayed on this page, with a link to your website, and a one-line description text.

from 200 USD / 200 EUR per month. Your name or company name and logo displayed on this page, with a link to your website and a custom description text. Companies that have helped FreeCAD early on also appear under Gold sponsors.

Instead of donating each month, you might find it more comfortable to make a one-time donation that, when divided by twelve, would give you right to enter a sponsoring tier. Don't hesitate to do so!

Choose freely the amount you wish to donate each month.

Please inform your forum name or twitter handle as a notein your transfer, or reach to us, so we can give you proper credits!

WebWerkzeuge Git‏‎

Menüeintrag
WebWerkzeuge → Git
Arbeitsbereich
Arbeitsbereich WebWerkzeuge
Standardtastenkürzel
Keiner
Eingeführt in Version
0.17
Siehe auch
Keiner

Beginnend mit FreeCAD v0.17 wurde dieses Werkzeug aus dem Arbeitsbereich Arch entfernt und ist nun Teil des externen Arbeitsbereichs WebTools, der über das Menü Werkzeuge → Addon-Manager installiert werden kann.

Beschreibung

Dieser Befehl erlaubt die Verwaltung des aktuellen Dokuments mit Git. Git ist ein leistungsfähiges Dateiversionskontrollsystem, das verschiedene Dateiversionen verwalten und die Änderungen verfolgen kann.

Git ist ein komplexes Werkzeug, daher sollte man sich mit den Grundlagen vertraut machen, bevor man dieses Werkzeug verwendet, um Fehlbedienungen zu vermeiden, die zu Datenverlusten führen können. Im Internet gibt es eine Fülle von Literatur über Git, die leicht zu finden ist.

Voraussetzung: Um diesen Befehl verwenden zu können, muss das gitpython-Paket auf dem System installiert sein. Auf den meisten Linux Distributionen ist gitpython in den Standard-Software-Repositorys als gitpython oder python-git verfügbar.

Anwendung

  1. Sicherstellen, dass das Ausgabefenster geöffnet ist, da die Git-Meldungen dort ausgegeben werden.
  2. Das aktuell aktive Dokument speichern und sicherstellen, dass sich die gespeicherte Datei in einem bestehenden Git-Repository befindet. Es kann sich in einem Unterverzeichnis befinden.
  3. Menü auswählen Web Werkzeuge → Git
  4. Dies öffnet ein Aufgaben-Fenster in der Combo-Ansicht.

Optionen

Aufgabenreiter zeigt die Git-Oberfläche
  • Die Protokoll-Schaltfläche klappt einen Dialog auf, in dem die aktuellsten Protokolleinträge angezeigt werden. Die Ausgabe entspricht git log.
  • Die Aktualisieren-Schaltfläche wird das Repository auf geänderte Dateien durchsuchen. Nach dem Speichern der Arbeit muss man eine manuelle Aktualisierung (Refresh) durchführen.
  • Die Diff Schaltfläche wird die Unterschiede zwischen der aktuellen Version einer ausgewählten Datei und der aktuellsten im Repository gespeicherten Vorversion anzeigen. Die Ausgabe entspricht git diff
    • Als Standardvorgabe wird ein binary diff ausgeführt, man muss das fcinfo einrichten, um ein texutal diffing durchzuführen.
  • Die Select all-Schaltfläche wird alle Dateien auswählen, um sie an das Repository zu übergeben (commit)
  • Die Commit-Schaltfläche wird die ausgewählten Dateien an das Repository übergeben (commit). Sicherstellen, eine Commit-Meldung zu erfassen, die die zu übergebenden Änderungen beschreiben
  • Die Pull-Schaltfläche wird jegliche neuen Änderungen aus dem ausgewählten entfernten (remote) Repository in das lokale herunterladen. Wenn die aktuell in FreeCAD geöffnete Datei durch einen Pull verändert wird, informiert eine Warnmeldung darüber, so dass die Datei entweder erneut gespeichert oder an einer anderen Stelle gespeichert werden kann
  • Die Push-Schaltfläche wird den/die letzten Commit/s in das entfernte Repository hochladen.

Einschränkungen

  • Das Werkzeug kann noch keine neuen Repositorys erstellen. Man muss bereits ein lokales Repository angelegt haben. (FreeCAD prüft, ob sich die aktuelle Dokumentendatei in einem Git-Repository befindet.)
  • Das Werkzeug kann keine Zweige ändern oder erstellen. Dies muss manuell mit Standard-Git-Werkzeugen gemacht werden.

Aktivieren von menschenlesbaren diffs für FCStd-Dateien mit dem Dienstprogramm fcinfo

FreeCADs FCStd-Dateiformat ist ein Zip-basiertes Binärformat, für das Git keine sauber lesbaren diffs (Unterschiede) erstellen kann. Das bedeutet, dass man nicht sehen kann, was sich zwischen der einen und der anderen Version geändert hat, und dass jede neue im Git-Repository gespeicherte Version eine vollständige Kopie der Datei ist.

Auch wenn es für das zweite Problem bisher keine Lösung gibt, kann das erste mit einem kleinen Werkzeug aus dem FreeCAD-Quellcode gelöst werden, das fcinfo heißt. Git kann angewiesen werden, das fcinfo-Dienstprogramm zu verwenden, um einen menschengerechten Bericht einer FCStd-Datei auszudrucken, und wenn es aufgefordert wird, einen Vergleich zwischen zwei FCStd-Dateien zu erstellen, wird es stattdessen einen Vergleich zwischen den beiden fcinfo-Berichten erstellen. Es muss beachtet werden, dass dies nur eine visuelle Rückmeldung ist, eine vollständige Kopie der Datei wird weiterhin intern gespeichert.

Beispiel eines mit fcinfo erstellten diff:

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)

Jede FreeCAD Datei enthält eine SHA1-Prüfsumme, die sich jedes Mal beim Speichern der Datei ändert, selbst wenn der Inhalt nicht verändert wurde. Deshalb wird fcinfo immer etwas ausgeben, unabhängig davon, ob sich der Inhalt ändert.

Zur Aktivierung der Nutzung von fcinfo (nur Linux und Mac - ToDo: Windows Anweisungen hinzufügen)

fcinfo in einem einzelnen Git-Repository benutzen

Dies sind die Schritte, um den Einsatz des Werkzeugs fcinfo in einer Repository-Basis zu ermöglichen.

  • Die Datei fcinfo irgendwo im eigenen Systempfad speichern.
Hinweis: Seit 2023-12-09, ist das Skript fcinfo auf Arch-Linux-Systemen im Paket freecad enthalten,Patch hier.
  • Die Datei ausführbar machen.
Hinweis: Seit 2023-12-09, ist das Skript fcinfo auf Arch-Linux-Systemen unter /usr/bin/fcinfo zu finden.
  • Eine .gitattributes-Datei im eigenen Git-Repository erstellen und folgende Zeile hinzufügen:
*.FCStd diff=fcinfo
  • Die folgenden Zeilen zur Datei .gitconfig im Home-Verzeichnis hinzufügen:
[diff "fcinfo"]
textconv = /path/to/fcinfo
  • Alternativ kann man fcinfo auch mit Argumenten aufrufen (z. B. --gui), man nutzt diesen Ansatz:
[diff "fcinfo"]
textconv = sh -c '/path/to/fcinfo --gui "$0"'XD

Man beachte, dass bei der Arbeit an einem Gemeinschaftsprojekt möglicherweise das Werkzeug fcinfo in das Repository aufgenommen werden soll. In diesem Fall ist der Pfad relativ zum Stammverzeichnis des Git-Repositorys.

fcinfo global aktivieren

Wenn man an vielen Projekten arbeitet, für die das Werkzeug fcinfo erforderlich ist, kann es global für den Benutzer aktiviert werden.

  • Man erstellt eine $HOME/.config/git/attributes-Datei und fügt die folgende Zeile hinzu:
*.FCStd diff=fcinfo
  • Die folgenden Zeilen zur Datei $HOME/.config/git/config hinzufügen:
    • Der entsprechende Befehl lautet git config --global diff.fcinfo.textconv "/path/to/fcinfo".
    • Arch Linux-Benutzer, die das Paket freecad nutzen, können {{{1}}} benutzen, da es bereits auf ihrem System installiert ist.
[diff "fcinfo"]
textconv = /path/to/fcinfo

Es ist zu beachten, dass alle in einem Repository vorgenommenen Konfigurationen globale Konfigurationen überschreiben.

Diese Seite wird abgerufen von https://wiki.freecad.org/WebTools_Git

Kontaktiere uns!
Forum GitHub Mastodon Matrix IRC Gitter.im Discord Reddit Twitter Facebook LinkedIn

© Das FreeCAD-Team. Bildnachweis (von oben nach unten): ppemawm, r-frank, epileftric, regis, rider_mortagnais, bejant.

Dieses Projekt wird unterstützt von: , KiCad Services Corp. und andere Sponsoren

GitHubDiese Seite auf GitHub verbessern