You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

165 lines
2.7 KiB

---
Alias: ["Git repo"]
Tag: ["Admin", "Computer", "Cloud", "Privacy"]
Date: 2021-08-18
DocType: "Product"
Hierarchy: "NonRoot"
TimeStamp: 2021-08-18
Product:
Type: "IT"
Link: "https://git-scm.com/"
Value: "Free"
---
Parent:: [[Storage and Syncing]], [[Privacy & Security]], [[Selfhosting]]
---
 
```button
name Edit Product parameters
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-GitHubEdit
```button
name Save
type command
action Save current file
id Save
```
^button-GitHubSave
 
# Git
 
```ad-abstract
title: Summary
collapse: open
Git is a repository of data and files enabling versioning, tracking and syncing working files. It offers public and private repositories and therefore a good solution for syncing files.
The tool is predominantly used by developers collaborating but can be used for personal use.
```
 
```toc
style: number
```
 
---
 
### Characteristics
 
Git is a service originally designed for developers to collaborate on code. It offers the following features:
- Storage for files & folders
- Secure data transfer protocol
- Versioning, change tracking
- Cross-platform
Implementations are aplenty, including GitHub or [[mfxm Website Scope#Git instance|Gitea]].
 
---
 
### Scripts
 
This section highlights different scripts to make Git work on different devices.
 
#### Desktop
Git folder is set up through a desktop App (Github, Gitup, else...) and comprises a folder of Git executables.
From the Terminal pointing towards the Git folder
3 years ago
```ad-command
~~~
cd /folderpath
~~~
```
a few actions can be initiated:
**Download docs**
3 years ago
```ad-command
~~~
git pull (--rebase) (optional: 'remote name' 'branche name')
or
git fetch
3 years ago
~~~
```
**Upload docs**
3 years ago
```ad-command
~~~
git add --all/'Folder or File name'
git commit -m "name of the update for versioning"
git push (optional 'remote name' 'branch name')
3 years ago
~~~
```
**Create a new branch**
3 years ago
```ad-command
~~~
git checkout -b 'branch name'
git push origin 'branch name'
3 years ago
~~~
```
 
#### iOS
iOS offers a simpler solution through [Working Copy](https://workingcopyapp.com), an App to manage Git repositories from an iPhone.
Select to sync folders from your phone to your Git repository through the 'Sync Folder' option.
The App then syncs on the phone. Any changes need to be committed and pushed to Git through the App.
 
---
 
### Further steps
 
- [x] Buy Working Copy Pro (£17.99)
 
---
 
### Documentation
 
- [Working Copy User Guide](https://workingcopyapp.com/manual.html#)
- [GitHub Help](https://guides.github.com/)
- [Gitup docs](https://github.com/git-up/GitUp/wiki)