Goals
- Set up a software configuration solution based on Git
- Manage the versions of the projects of the data warehouse
Program
Source control management (SCM) principles
History, local, centralized and distributed control
How snapshots work, compare with differences
Installation (Linux, MacOS, Windows)
Manual access: man / help
Initial Git configuration: preferences, user profile
Initializing a local repository
Workshop: Installing e Git – Creating a project
Concepts, working directory, index and repository
Check the status of the working copy: status
Index your modifications: add
Ignore files: .gitignore
Validate your modifications: commit
Delete and move files
Workshop: contributions and validations
View the modifications: log
Customize the format: stat, pretty,…
Filter by date, author, commit message, modified content, …
View and export a difference (native format, external tool)
Label its validations: light and annotated labels
Search with git-grep
Rewrite the last validation
Deindex a file
Reset a file
Branch principle, the HEAD pointer
Create a branch
Switch between branches, detached mode
Merge branches: fast-forward, three sources
Manage merge conflicts
External merge tool: mergetool (emerge, vimdiff, meld, …)
View the existing branches, those which have been merged
Delete a branch Branch
management strategies: long branch, thematic, …
Remote
repository, remote branches, branch tracking View and inspect remote repositories
Add, rename, remove remote repositories
Pull, push and delete a remote branch
Warning: the dangers of overwriting
Rebase a portion of a branch
When to rebase and when to merge
Check in your work in progress
Create a branch from a delivery
Clean up your working directory
Configure default editor, automatic exclusions, …
Create and use aliases
Graphical tools: Git-Gui, GitKraken, SmartGit, …
Create filters: smudge and clean
Client side hooks: pre-commit, pre-rebase, post-rewrite …
Server side hooks: pre-receive, update, post-receive
Principle of submodules
Declare, pull and update a submodule
Modify and manage conflicts on an external library
Problems with submodules
Protocols: local, HTTP, SSH, Git
Creation of a bare repository, user accounts
Single git user , SSH keys and git-shell
Git daemon
Workshop: Setting up a Git server
A simple and light server: GitWeb
A more complete platform: GitLab
GitLab: user configuration
GitLab: project exploration, activity monitoring, wiki
GitLab: issue manager, web hooks, code review
A turnkey hosted service : GitHub
GitHub: account creation and configuration
GitHub: contribution rules
GitHub: maintenance of a project
Workshop: Retrieving and exploring a GitLab
Git and the Project Lifecycle
Git and Continuous Integration: GitLab Example
Duration
2 days
Price
£ 1272
Audience
Developers
Prerequisites
System administration concepts
Reference
GES705-F
Sessions
Contact us for more informations about session date