2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Git ist ein verteiltes Open-Source-Versionskontrollsystem, das die Versionsverwaltung von Projekten von sehr kleinen bis zu sehr großen Projekten effizient und mit hoher Geschwindigkeit durchführen kann.
Git ist verteilt. Jeder unserer Computer verfügt über die gleichen Dinge. Wir verwenden Git und haben einen zentralen Server, um den Austausch aller Änderungen zu erleichtern. Der Status dieses Servers ist jedoch derselbe wie bei jedem unserer PCs. Wir können diesen Server als Entwickler-PC verwenden, damit jeder problemlos miteinander kommunizieren kann, ohne den Computer herunterzufahren. Ohne diesen Server kann zwar noch jeder arbeiten, allerdings sind „Austausch“-Modifikationen umständlich.
Zentralisiertes Versionskontrolltool
Zentralisiertes Versionskontrolltool, die Versionsbibliothek wird auf einem zentralen Server gespeichert. Jeder im Team lädt den Code vom zentralen Server herunter, wenn er arbeitet, muss er mit dem Internet verbunden sein, entweder einem lokalen Netzwerk oder dem Internet. Übermitteln Sie persönliche Änderungen an das zentrale Repository. Wie zum Beispiel: SVN, CVS
Verteiltes Versionskontrolltool
Im verteilten Versionskontrollsystem gibt es keinen „zentralen Server“. Jeder Computer verfügt über eine vollständige Versionsbibliothek. Bei dieser Arbeit ist keine Verbindung zum Internet erforderlich, da sich die Versionsbibliothek auf Ihrem eigenen Computer befindet. Wenn mehrere Personen zusammenarbeiten, müssen sie nur ihre Änderungen aneinander weitergeben und können dann die Änderungen des anderen sehen. Wie zum Beispiel: Git
Git-Workflow:
Klon: Code vom Remote-Repository in das lokale Repository klonen
Kasse: Schauen Sie sich eine Lagerfiliale im örtlichen Lager an und nehmen Sie Änderungen vor
hinzufügen: Senden Sie den Code vor dem Absenden an den Staging-Bereich
begehen: An das lokale Lager senden und die geänderten historischen Versionen im lokalen Lager speichern
bringen: Ohne Zusammenführungsaktion von der Remote-Bibliothek in das lokale Warehouse abrufen.
ziehen: Von der Remote-Bibliothek in die lokale Bibliothek ziehen und automatisch zusammenführen (verschmelzen) und platzieren Sie es dann im Arbeitsbereich, was äquivalent istfetch merge
drücken: Schieben Sie den Code in das Remote-Warehouse
git config
:Konfigurationsinformationen
# 设置用户信息
git config --global user.name "userName"
git config --global user.email "Email"
# 查看配置信息
git config --global user.name
git config --global user.email
alias
: Konfigurationsbefehlsalias, in~/.bashrc
Fügen Sie die Konfiguration hinzu und müssen Sie sie ausführen, nachdem die Änderung abgeschlossen ist.source ~/.bashrc
# 部分windows系统不允许用户创建.开头的文件,可以在gitBash中执行
touch ~/.bashrc
# 在~/.bashrc中添加内容,输出git提交日志
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
git init
: Initialisieren Sie das aktuelle Verzeichnis als Git-Warehouse. Nach erfolgreicher Ausführung gibt es mehrere.git
Ordner
git status
: Änderungsstatus anzeigen (Temporärer Lagerbereich, Arbeitsbereich)
git add
: Änderungen an einer oder mehreren Dateien im Arbeitsbereich zum Staging-Bereich hinzufügen
git add 单个文件名 | 通配符
# 将所有修改加入到暂存区
git add .
git commit
: Senden Sie den Inhalt des Bereitstellungsbereichs an die aktuelle Filiale des örtlichen Lagers.git commit -m '注释内容'
git log
: Übermittlungsprotokolle anzeigen und Aliase konfigurierengit-log
git log [option]
--all 显式所有分支
--pretty=oneline 将提交信息显示为一行
--abbrev-commit 使得输出的commitId更简短
--graph 以图的形式显示
git reset
:Versions-Rollback
# 查看已经删除的记录,可以看到已经删除的提交记录
git reflog
# 版本切换,commitId可以通过git log查看
git reset --hard commitId
git branch
: Lokale Zweige anzeigen bedeutet, dass die Arbeit von der Hauptentwicklungslinie getrennt werden kann, um Fehler zu beheben und neue Funktionen zu entwickeln, ohne die Hauptentwicklungslinie zu beeinträchtigen.
Meister(Produktion) Zweig: Online-Zweig, Hauptzweig, Zweig, der kleinen und mittleren Projekten als online laufende Anwendungen entspricht
entwickeln(entwickeln) Zweig: Es handelt sich um einen vom Master erstellten Zweig. Er wird im Allgemeinen als Hauptentwicklungszweig für verschiedene Phasen der Online-Entwicklung verwendet Die Phasenentwicklung ist abgeschlossen, sie muss in den Master-Zweig eingebunden und für die Online-Schaltung vorbereitet werden.
Feature/xxx-Zweig: Ein Zweig, der aus der Entwicklung erstellt wurde. Er wird normalerweise gleichzeitig entwickelt, wird jedoch erstellt, wenn die Forschungsaufgaben im Zweig abgeschlossen sind Zweig entwickeln.
Hotfix/xxx-Zweig: Ein vom Master abgeleiteter Zweig, der im Allgemeinen für die Online-Fehlerbehebung verwendet wird. Nach Abschluss der Reparatur muss er in die Zweige „Master“, „Test“ und „Entwickeln“ zusammengeführt werden.
prüfen(prüfen) Zweig
Vor(Vor der Markteinführung) Zweig
# 查看本地分支
git branch
# 创建本地分支
git branch 分支名
# 切换分支
git checkout 分支名
# 切换到一个不存在的分支,创建并切换
git checkout -b 分支名
# 合并分支,一个分支上的提交可以合并到另一个分支
git merge 分支名
# 删除分支,不能删除当前分支,只能删除其它分支
# 删除时需要做各种检查
git branch -d 分支名
# 强制删除,不做任何检查
git branch -D 分支名
Konfliktlösung: Wenn Änderungen an Dateien in zwei Zweigen in Konflikt geraten können, beispielsweise wenn dieselbe Zeile derselben Datei gleichzeitig geändert wird, muss der Konflikt manuell gelöst werden. Die Schritte sind wie folgt:
git remote add
: Fügen Sie ein Remote-Warehouse hinzu. Bei diesem Vorgang wird zunächst die lokale Bibliothek initialisiert und dann mit der erstellten Remote-Bibliothek verbunden.
git remote add