SlideShare une entreprise Scribd logo
1  sur  102
Télécharger pour lire hors ligne
Gitlab Training
Teerapat Khunpech
VCS Technology
True Information Technology
1
Gitlab : New Project
2
Gitlab : New Project (cont.)
3
Gitlab : New Project (cont.)
4
TIPS
Use SSH Key
5
SSH keys
SSH keys are a way to identify trusted
computers, without involving passwords. The
steps below will walk you through generating an
SSH key and adding the public key to your Gitlab
account.
6http://docstore.mik.ua/orelly/networking_2ndEd/ssh/figs/ssh_0202.gif
SSH-Keygen
$ ssh-keygen –t rsa –C “teerapat_khu@truecorp.co.th”
Generate public/private rsa key pair.
Enter file in which to save the key
/home/teerapat_khu/.ssh/id_rsa: [Press enter]
Enter passphrase (empty no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
Your identification has been saved in /home/teerapat_khu/.ssh/ida_rsa.
Your public key has been saved in /home/teerapat_khu/.ssh/ida_rsa.pub.
The key fingerprint is:
bd:10:cf:76:23:4c:c7:34:83:26:ba:f4:c3:31:c1:00 teerapat_khu@truecorp.co.th
7
SSH-Keygen
$ ssh-keygen –t rsa –C “teerapat_khu@truecorp.co.th”
Generate public/private rsa key pair.
Enter file in which to save the key
/home/teerapat_khu/.ssh/id_rsa: [Press enter]
Enter passphrase (empty no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
Your identification has been saved in /home/teerapat_khu/.ssh/ida_rsa.
Your public key has been saved in /home/teerapat_khu/.ssh/ida_rsa.pub.
The key fingerprint is:
bd:10:cf:76:23:4c:c7:34:83:26:ba:f4:c3:31:c1:00 teerapat_khu@truecorp.co.th
$ cat /home/teerapat_khu/.ssh/ida_rsa.pub
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQDJjw9w7vbV3bQZ9kWBCBTVK2vYIMX+k6Zo6hf/MDVE2dttCdQJ87+dDdO
jRfudizsjge0nLb/pFfWtyTbZu9NGLPo/PRYD9PAPOoU6Bp9fhOCjV4ShZQQcEnZ+iIsmGAoCR08JAW/kVsu55U
8EHxuCv7Tq0L3LhUPqfbmbCO2bZP11d5kAREd4kJxA7o5SO5e2VtDJurf5COjmGXRl31AuafeXLZdtWzdSOuy5/
Lw5k+X2LnKohZYupzZ3I7O+K1x2MOuXMXgg/ZdOyyrkaMGC78s6EFhVGoTfZUU/lH8TE6v2BL0RSqbD4Ty5YZ81
+ZMezUvuyTlY7OdA6Jda/hPd teerapat_khu@truecorp.co.th
8
SSH-Keygen
$ ssh-keygen –t rsa –C “teerapat_khu@truecorp.co.th”
Generate public/private rsa key pair.
Enter file in which to save the key
/home/teerapat_khu/.ssh/id_rsa: [Press enter]
Enter passphrase (empty no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
Your identification has been saved in /home/teerapat_khu/.ssh/ida_rsa.
Your public key has been saved in /home/teerapat_khu/.ssh/ida_rsa.pub.
The key fingerprint is:
bd:10:cf:76:23:4c:c7:34:83:26:ba:f4:c3:31:c1:00 teerapat_khu@truecorp.co.th
$ cat /home/teerapat_khu/.ssh/ida_rsa.pub
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQDJjw9w7vbV3bQZ9kWBCBTVK2vYIMX+k6Zo6hf/MDVE2dttCdQJ87+dDdO
jRfudizsjge0nLb/pFfWtyTbZu9NGLPo/PRYD9PAPOoU6Bp9fhOCjV4ShZQQcEnZ+iIsmGAoCR08JAW/kVsu55U
8EHxuCv7Tq0L3LhUPqfbmbCO2bZP11d5kAREd4kJxA7o5SO5e2VtDJurf5COjmGXRl31AuafeXLZdtWzdSOuy5/
Lw5k+X2LnKohZYupzZ3I7O+K1x2MOuXMXgg/ZdOyyrkaMGC78s6EFhVGoTfZUU/lH8TE6v2BL0RSqbD4Ty5YZ81
+ZMezUvuyTlY7OdA6Jda/hPd teerapat_khu@truecorp.co.th
9
File
Copy this
Add key to SSH Agent
$ eval `ssh-agent -s`
Agent pid 7260
10
Add key to SSH Agent
$ eval `ssh-agent -s`
Agent pid 7260
$ ssh-add /home/teerapat_khu/.ssh/ida_rsa.pub
Enter passphrase for ssh-add /home/teerapat_khu/.ssh/ida_rsa.pub:
11
PuTTY Key Generator
12
• On windows use Putty Key generator
PuTTY Key Generator
13
• On windows use Putty Key generator
Copy this
Save to file
Add SSH Key to SourceTree
14
Add SSH Key to Gitlab
15
Profile Settings > SSH Keys
Add SSH Key to Gitlab (cont.)
16
Profile Settings > SSH Keys > Add SSH Key
SourceTree: Create New Repository
17
Git: Create New Repository
$ git init
Initialized empty Git repository in
/home/teerapat_khu/mywebapp/.git/
18
SourceTree: Clone Gitlab Project
19
Git: Clone Gitlab Project
$ git clone git@gitlab.vcs.true.th:Teera36/my-
webapp.git
Cloning into 'my-webapp'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
20
SourceTree: Add Remote Repository
21
SourceTree: Add Remote Repository
(cont.)
22
SourceTree: Add Remote Repository
(cont.)
23
SourceTree: Add Remote Repository
(cont.)
24
Git: Add Remote Repository
$ git remote add gitlab-vcs 
git@gitlab.vcs.true.th:Teera36/my-
webapp.git
25
SourceTree: Make some change
26
SourceTree: Add file to staged
27
Git: Add file to staged
$ git add .
28
SourceTree: Commit
29
Git: Commit
$ git commit –m “First commit”
[develop a75c276] First commit
18 files changed, 724 insertions(+)
create mode 100755 .bowerrc
create mode 100755 .editorconfig
create mode 100755 .gitattributes
create mode 100755 .gitignore
create mode 100755 .jshintrc
create mode 100755 .yo-rc.json
create mode 100755 Gruntfile.js
create mode 100755 app/favicon.ico
create mode 100755 app/index.html
create mode 100755 app/robots.txt
create mode 100755 app/scripts/main.js
create mode 100755 app/styles/main.css
create mode 100755 bower.json
create mode 100755 package.json
create mode 100755 test/.bowerrc
create mode 100755 test/bower.json
create mode 100755 test/index.html
create mode 100755 test/spec/test.js
30
SourceTree: Log/History
31
Git: Log/History
$ git log
commit a75c2764c720fd4fccab54d8ef1e8a7bb6244060
Author: teerapat_khu <teerapat_khu@truecorp.co.th>
Date: Thu Jun 11 19:02:27 2015 +0700
First commit
32
SourceTree: Push to Remote Repo
33
Git: Push to Remote Repo
$ git push –u gitlab-vcs master
Counting objects: 2, done.
Writing objects: 100% (2/2), 161 bytes | 0 bytes/s, done.
Total 2 (delta 0), reused 0 (delta 0)
To git@gitlab.vcs.true.th:Teera36/my-webapp.git
* [new branch] master -> master
Branch master set up to track remote branch master from gitlab-
vcs.
34
SourceTree: Log/History
35
Git: Log/History
$ git log
commit a75c2764c720fd4fccab54d8ef1e8a7bb6244060
Author: teerapat_khu <teerapat_khu@truecorp.co.th>
Date: Thu Jun 11 19:02:27 2015 +0700
First commit
36
SourceTree: Git Flow initial
37
Git: Git Flow initial
$ git flow init
No branches exist yet. Base branches must be created now.
Branch name for production releases: [master]
Branch name for "next release" development: [develop]
How to name your supporting branch prefixes?
Feature branches? [feature/]
Release branches? [release/]
Hotfix branches? [hotfix/]
Support branches? [support/]
Version tag prefix? []
38
SouceTree: Log/History
39
Git: Log/History
$ git branch
* develop
master
40
SourceTree: Start new feature
41
SourceTree: Start new feature (cont.)
42
Git: Start new feature
$ git flow feature start Create_Index_Page
Switched to a new branch 'feature/Create_Index_Page'
Summary of actions:
- A new branch 'feature/Create_Index_Page' was created, based on
'develop'
- You are now on branch 'feature/Create_Index_Page'
Now, start committing on your feature. When done, use:
git flow feature finish Create_Index_Page
43
SourceTree: Log/History
44
Git: Log/History
$ git branch
develop
* feature/Create_Index_Page
master
45
SourceTree: New Feature (add)
46
Git: New Feature (add)
$ vi app/index.html
$ git status
On branch feature/Create_Index_Page
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working
directory)
modified: app/index.html
no changes added to commit (use "git add" and/or "git commit -a")
47
SourceTree: New Feature (add)
48
Git: New Feature (add)
$ git add .
49
SourceTree: New Feature (commit)
50
Git: New Feature (commit)
$ git commit -m "edit for include css bower
file"
[feature/Create_Index_Page 4121469] edit for include
css bower file
1 file changed, 1 insertion(+), 1 deletion(-)
51
SourceTree: New Feature (log)
52
Git: New Feature (log)
$ git branch
develop
* feature/Create_Index_Page
master
$ git log --graph --pretty=oneline --abbrev-commit
* 4121469 edit for include css bower file
* a75c276 First commit
53
SourceTree: Finish Feature
54
SourceTree: Finish Feature
55
Git: Finish Feature
$ git flow feature finish Create_Index_Page
Switched to branch 'develop'
Updating a75c276..4121469
Fast-forward
app/index.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Deleted branch feature/Create_Index_Page (was 4121469).
Summary of actions:
- The feature branch 'feature/Create_Index_Page' was
merged into 'develop'
- Feature branch 'feature/Create_Index_Page' has been
removed
- You are now on branch 'develop'
56
SourceTree: Log/History
57
Git: Log/History
$ git branch
* develop
master
$ git log --graph --pretty=oneline --abbrev-commit
* 4121469 edit for include css bower file
* a75c276 First commit
58
SourceTree: Start New Release
59
SourceTree: Start New Release
60
Git: Start New Release
$ git flow release start MyWebApp-1.0-unstable
Switched to a new branch 'release/MyWebApp-1.0-unstable'
Summary of actions:
- A new branch 'release/MyWebApp-1.0-unstable' was
created, based on 'develop'
- You are now on branch 'release/MyWebApp-1.0-unstable'
Follow-up actions:
- Bump the version number now!
- Start committing last-minute fixes in preparing your
release
- When done, run:
git flow release finish 'MyWebApp-1.0-unstable'
61
Git: Log/History
$ git branch
develop
master
* release/MyWebApp-1.0-unstable
$ git log --graph --pretty=oneline --abbrev-commit
* 4121469 edit for include css bower file
* a75c276 First commit
62
SourceTree: Finish Release
63
SourceTree: Finish Release and add Tag
64
Git: Finish Release
$ git flow release finish MyWebApp-1.0-unstable
Switched to branch 'master'
Your branch is up-to-date with 'gitlab-vcs/master'.
Merge made by the 'recursive' strategy.
.bowerrc | 3 ++
.editorconfig | 21 +++++++++
.gitattributes | 1 +
Deleted branch release/MyWebApp-1.0-unstable (was
4121469).
Summary of actions:
- Latest objects have been fetched from 'origin'
- Release branch has been merged into 'master'
- The release was tagged 'MyWebApp-1.0-unstable'
- Release branch has been back-merged into 'develop'
- Release branch 'release/MyWebApp-1.0-unstable' has been
deleted
65
SourceTree: Log/History
66
Git: Log/History
$ git branch
develop
* master
$ git log --graph --pretty=oneline --abbrev-commit
* 8811504 Merge branch 'release/MyWebApp-1.0-unstable'
|
| * 4121469 edit for include css bower file
| |
|/
* a75c276 First commit
67
Gitlab: View Branch
68
Gitlab: Create New Branch
69
Gitlab: Create New Branch
70
SourceTree: Fetch From Remote Repo
71
Git: Fetch From Remote Repo
$ git fetch gitlab-vcs
From gitlab.vcs.true.th:Teera36/my-webapp
* [new branch] develop -> gitlab-vcs/develop
72
SourceTree: Push to Remote Repo
73
Git: Push to Remote Repo
$ git push -u gitlab-vcs develop
Total 0 (delta 0), reused 0 (delta 0)
To git@gitlab.vcs.true.th:Teera36/my-webapp.git
b28c91b..4121469 develop -> develop
Branch develop set up to track remote branch develop from
gitlab-vcs.
74
Make some changes
75
SourceTree: Log/History
76
Git: Log/History
$ git checkout develop
Switched to branch 'develop'
Your branch is up-to-date with 'gitlab-vcs/develop'.
$ vim app/index.html
$ git add .
$ git commit -m "Add "Sign up" Menu"
[develop 13c959a] Add "Sign up" Menu
1 file changed, 1 insertion(+)
$ git log --graph --pretty=oneline --abbrev-commit
* 13c959a Add "Sign up" Menu
* 4121469 edit for include css bower file
* a75c276 First commit
77
SourceTree: Add Commit on Develop
78
Git: Add Commit on Develop
$ vim app/index.html
$ git add .
$ git commit -m “Fix css"
[develop 1c8980f] Fix css
1 file changed, 1 insertion(+)
$ git log --graph --pretty=oneline --abbrev-
commit
* 1c8980f Fix css
* 13c959a Add "Sign up" Menu
* 4121469 edit for include css bower file
* a75c276 First commit
79
SourceTree: Start New Release
80
SourceTree: Start New Release
81
Git: Start New Release
$ git flow release start MyWebApp-1.1-unstable
Switched to a new branch 'release/MyWebApp-1.1-unstable'
Summary of actions:
- A new branch 'release/MyWebApp-1.1-unstable' was
created, based on 'develop'
- You are now on branch 'release/MyWebApp-1.1-unstable'
Follow-up actions:
- Bump the version number now!
- Start committing last-minute fixes in preparing your
release
- When done, run:
git flow release finish 'MyWebApp-1.1-unstable'
82
SourceTree: Log/History
83
Git Log/History
$ git branch
develop
master
* release/MyWebApp-1.1-unstable
84
SourceTree: Finish Release
85
SourceTree: Finish Release
86
Git: Finish Release
$ git flow release finish MyWebApp-1.1-unstable
Switched to branch 'master'
Your branch is up-to-date with 'gitlab-vcs/master'.
Merge made by the 'recursive' strategy.
app/index.html | 2 ++
1 file changed, 2 insertions(+)
Deleted branch release/MyWebApp-1.1-unstable (was
1c8980f).
Summary of actions:
- Latest objects have been fetched from 'origin'
- Release branch has been merged into 'master'
- The release was tagged 'MyWebApp-1.1-unstable'
- Release branch has been back-merged into 'develop'
- Release branch 'release/MyWebApp-1.1-unstable' has been
deleted
87
SourceTree: Finish Release
88
Git: Log/History
$ git branch
develop
* master
$ git log --graph --pretty=oneline --abbrev-
commit
* e7fe2e7 Merge branch 'release/MyWebApp-1.1-unstable'
|
| * 1c8980f Fix css
| * 13c959a Add "Sign up" Menu
* | 8811504 Merge branch 'release/MyWebApp-1.0-unstable'
| 
| |/
| * 4121469 edit for include css bower file
| |
|/
* a75c276 First commit
89
SourceTree: Push to Remote Repo
90
Git: Push to Remote Repo
$ git push -u gitlab-vcs develop
Counting objects: 8, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (8/8), 701 bytes | 0 bytes/s, done.
Total 8 (delta 6), reused 0 (delta 0)
To git@gitlab.vcs.true.th:Teera36/my-webapp.git
4121469..1c8980f develop -> develop
Branch develop set up to track remote branch develop from
gitlab-vcs.
91
Gitlab: Merge Request
92
Gitlab: Merge Request (code review)
93
Gitlab: Merge Request (code review)
94
Gitlab: Merge Request
95
Gitlab: Merge Request
96
Gitlab: Merge Request
(Accept request)
97
Gitlab: Merge Request
(Accept request)
98
Gitlab: History/Log
99
Make some changes
100
Gitlab: History/Log
101
Gitlab: History/Log
102

Contenu connexe

Tendances

Gitlab flow solo
Gitlab flow soloGitlab flow solo
Gitlab flow soloviniciusban
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash CourseNilay Binjola
 
Version Control & Git
Version Control & GitVersion Control & Git
Version Control & GitJason Byrne
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hubVenkat Malladi
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub ActionsBo-Yi Wu
 
DevOps with GitHub Actions
DevOps with GitHub ActionsDevOps with GitHub Actions
DevOps with GitHub ActionsNilesh Gule
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requestsBartosz Kosarzycki
 
Git workflows presentation
Git workflows presentationGit workflows presentation
Git workflows presentationMack Hardy
 
Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Noa Harel
 
A Practical Introduction to git
A Practical Introduction to gitA Practical Introduction to git
A Practical Introduction to gitEmanuele Olivetti
 

Tendances (20)

Gitlab flow solo
Gitlab flow soloGitlab flow solo
Gitlab flow solo
 
Git 101 for Beginners
Git 101 for Beginners Git 101 for Beginners
Git 101 for Beginners
 
Git and github 101
Git and github 101Git and github 101
Git and github 101
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
 
Version Control & Git
Version Control & GitVersion Control & Git
Version Control & Git
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 
git and github
git and githubgit and github
git and github
 
Introducing Vault
Introducing VaultIntroducing Vault
Introducing Vault
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Git basics
Git basicsGit basics
Git basics
 
DevOps with GitHub Actions
DevOps with GitHub ActionsDevOps with GitHub Actions
DevOps with GitHub Actions
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requests
 
Git workflows presentation
Git workflows presentationGit workflows presentation
Git workflows presentation
 
Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)
 
Vault 101
Vault 101Vault 101
Vault 101
 
BitBucket presentation
BitBucket presentationBitBucket presentation
BitBucket presentation
 
Git workflows
Git workflowsGit workflows
Git workflows
 
A Practical Introduction to git
A Practical Introduction to gitA Practical Introduction to git
A Practical Introduction to git
 
Introduction to gradle
Introduction to gradleIntroduction to gradle
Introduction to gradle
 

En vedette

DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDocker, Inc.
 
Getting started with Jenkins
Getting started with JenkinsGetting started with Jenkins
Getting started with JenkinsEdureka!
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentSven Peters
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for TestingCarlos Sanchez
 
GitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLabGitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLabShinu Suresh
 
Dockercon2015 bamboo
Dockercon2015 bambooDockercon2015 bamboo
Dockercon2015 bambooSteve Smith
 
Continuous Delivery with Jenkins and Wildfly (2014)
Continuous Delivery with Jenkins and Wildfly (2014)Continuous Delivery with Jenkins and Wildfly (2014)
Continuous Delivery with Jenkins and Wildfly (2014)Tracy Kennedy
 
Game of Codes: the Battle for CI
Game of Codes: the Battle for CIGame of Codes: the Battle for CI
Game of Codes: the Battle for CIAtlassian
 
Bamboo - an introduction
Bamboo - an introductionBamboo - an introduction
Bamboo - an introductionSven Peters
 
Master Continuous Delivery with CloudBees Jenkins Platform
Master Continuous Delivery with CloudBees Jenkins PlatformMaster Continuous Delivery with CloudBees Jenkins Platform
Master Continuous Delivery with CloudBees Jenkins Platformdcjuengst
 
Git and GitHub for Documentation
Git and GitHub for DocumentationGit and GitHub for Documentation
Git and GitHub for DocumentationAnne Gentle
 
Ic maven jenkins_sonar
Ic maven jenkins_sonarIc maven jenkins_sonar
Ic maven jenkins_sonarRocío Muñoz
 
Introduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideIntroduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideRohit Arora
 
Jenkins Docker
Jenkins DockerJenkins Docker
Jenkins DockerAlex Soto
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners HubSpot
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerSonatype
 
Seven Habits of Highly Effective Jenkins Users (2014 edition!)
Seven Habits of Highly Effective Jenkins Users (2014 edition!)Seven Habits of Highly Effective Jenkins Users (2014 edition!)
Seven Habits of Highly Effective Jenkins Users (2014 edition!)Andrew Bayer
 

En vedette (19)

Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
 
Getting started with Jenkins
Getting started with JenkinsGetting started with Jenkins
Getting started with Jenkins
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your Development
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for Testing
 
GitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLabGitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLab
 
Dockercon2015 bamboo
Dockercon2015 bambooDockercon2015 bamboo
Dockercon2015 bamboo
 
Continuous Delivery with Jenkins and Wildfly (2014)
Continuous Delivery with Jenkins and Wildfly (2014)Continuous Delivery with Jenkins and Wildfly (2014)
Continuous Delivery with Jenkins and Wildfly (2014)
 
Game of Codes: the Battle for CI
Game of Codes: the Battle for CIGame of Codes: the Battle for CI
Game of Codes: the Battle for CI
 
Bamboo - an introduction
Bamboo - an introductionBamboo - an introduction
Bamboo - an introduction
 
Master Continuous Delivery with CloudBees Jenkins Platform
Master Continuous Delivery with CloudBees Jenkins PlatformMaster Continuous Delivery with CloudBees Jenkins Platform
Master Continuous Delivery with CloudBees Jenkins Platform
 
Git and GitHub for Documentation
Git and GitHub for DocumentationGit and GitHub for Documentation
Git and GitHub for Documentation
 
Ic maven jenkins_sonar
Ic maven jenkins_sonarIc maven jenkins_sonar
Ic maven jenkins_sonar
 
Introduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideIntroduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guide
 
Jenkins Docker
Jenkins DockerJenkins Docker
Jenkins Docker
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners
 
DevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for DockerDevOps and Continuous Delivery reference architectures for Docker
DevOps and Continuous Delivery reference architectures for Docker
 
Seven Habits of Highly Effective Jenkins Users (2014 edition!)
Seven Habits of Highly Effective Jenkins Users (2014 edition!)Seven Habits of Highly Effective Jenkins Users (2014 edition!)
Seven Habits of Highly Effective Jenkins Users (2014 edition!)
 
Speaking part 3
Speaking part 3Speaking part 3
Speaking part 3
 

Similaire à Gitlab Training with GIT and SourceTree

Introduction to Git for Artists
Introduction to Git for ArtistsIntroduction to Git for Artists
Introduction to Git for ArtistsDavid Newbury
 
Git Developer Cheatsheet
Git Developer CheatsheetGit Developer Cheatsheet
Git Developer CheatsheetAbdul Basit
 
Version control git day03
Version control   git day03Version control   git day03
Version control git day03Gourav Varma
 
Git lab installation guide
Git lab installation guideGit lab installation guide
Git lab installation guideRaiful Hasan
 
Git session Dropsolid.com
Git session Dropsolid.comGit session Dropsolid.com
Git session Dropsolid.comdropsolid
 
Practical git for developers
Practical git for developersPractical git for developers
Practical git for developersWim Godden
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control SystemVictor Wong
 
Gitlab installation
Gitlab installationGitlab installation
Gitlab installationRaiful Hasan
 
Git Acquainted
Git AcquaintedGit Acquainted
Git Acquaintedtylerhunt
 
Git 101 Workshop
Git 101 WorkshopGit 101 Workshop
Git 101 WorkshopJoy Seng
 
Git workflows automat-it
Git workflows automat-itGit workflows automat-it
Git workflows automat-itAutomat-IT
 

Similaire à Gitlab Training with GIT and SourceTree (20)

Github By Nyros Developer
Github By Nyros DeveloperGithub By Nyros Developer
Github By Nyros Developer
 
Git github
Git githubGit github
Git github
 
Introduction to Git for Artists
Introduction to Git for ArtistsIntroduction to Git for Artists
Introduction to Git for Artists
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 
Git101
Git101Git101
Git101
 
Gittalk
GittalkGittalk
Gittalk
 
Git Developer Cheatsheet
Git Developer CheatsheetGit Developer Cheatsheet
Git Developer Cheatsheet
 
GitSetupLinux
GitSetupLinuxGitSetupLinux
GitSetupLinux
 
Git setuplinux
Git setuplinuxGit setuplinux
Git setuplinux
 
GDSC GIT AND GITHUB
GDSC GIT AND GITHUB GDSC GIT AND GITHUB
GDSC GIT AND GITHUB
 
Version control git day03
Version control   git day03Version control   git day03
Version control git day03
 
Git lab installation guide
Git lab installation guideGit lab installation guide
Git lab installation guide
 
GIT By Sivakrishna
GIT By SivakrishnaGIT By Sivakrishna
GIT By Sivakrishna
 
Git session Dropsolid.com
Git session Dropsolid.comGit session Dropsolid.com
Git session Dropsolid.com
 
Practical git for developers
Practical git for developersPractical git for developers
Practical git for developers
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control System
 
Gitlab installation
Gitlab installationGitlab installation
Gitlab installation
 
Git Acquainted
Git AcquaintedGit Acquainted
Git Acquainted
 
Git 101 Workshop
Git 101 WorkshopGit 101 Workshop
Git 101 Workshop
 
Git workflows automat-it
Git workflows automat-itGit workflows automat-it
Git workflows automat-it
 

Dernier

TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
Vishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsVishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsSachinPawar510423
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Risk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfRisk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfROCENODodongVILLACER
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction managementMariconPadriquez1
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
welding defects observed during the welding
welding defects observed during the weldingwelding defects observed during the welding
welding defects observed during the weldingMuhammadUzairLiaqat
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substationstephanwindworld
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfgUnit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfgsaravananr517913
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 

Dernier (20)

TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
Vishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsVishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documents
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
Risk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfRisk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdf
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction management
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
welding defects observed during the welding
welding defects observed during the weldingwelding defects observed during the welding
welding defects observed during the welding
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substation
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfgUnit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 

Gitlab Training with GIT and SourceTree

  • 1. Gitlab Training Teerapat Khunpech VCS Technology True Information Technology 1
  • 2. Gitlab : New Project 2
  • 3. Gitlab : New Project (cont.) 3
  • 4. Gitlab : New Project (cont.) 4
  • 6. SSH keys SSH keys are a way to identify trusted computers, without involving passwords. The steps below will walk you through generating an SSH key and adding the public key to your Gitlab account. 6http://docstore.mik.ua/orelly/networking_2ndEd/ssh/figs/ssh_0202.gif
  • 7. SSH-Keygen $ ssh-keygen –t rsa –C “teerapat_khu@truecorp.co.th” Generate public/private rsa key pair. Enter file in which to save the key /home/teerapat_khu/.ssh/id_rsa: [Press enter] Enter passphrase (empty no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again] Your identification has been saved in /home/teerapat_khu/.ssh/ida_rsa. Your public key has been saved in /home/teerapat_khu/.ssh/ida_rsa.pub. The key fingerprint is: bd:10:cf:76:23:4c:c7:34:83:26:ba:f4:c3:31:c1:00 teerapat_khu@truecorp.co.th 7
  • 8. SSH-Keygen $ ssh-keygen –t rsa –C “teerapat_khu@truecorp.co.th” Generate public/private rsa key pair. Enter file in which to save the key /home/teerapat_khu/.ssh/id_rsa: [Press enter] Enter passphrase (empty no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again] Your identification has been saved in /home/teerapat_khu/.ssh/ida_rsa. Your public key has been saved in /home/teerapat_khu/.ssh/ida_rsa.pub. The key fingerprint is: bd:10:cf:76:23:4c:c7:34:83:26:ba:f4:c3:31:c1:00 teerapat_khu@truecorp.co.th $ cat /home/teerapat_khu/.ssh/ida_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJjw9w7vbV3bQZ9kWBCBTVK2vYIMX+k6Zo6hf/MDVE2dttCdQJ87+dDdO jRfudizsjge0nLb/pFfWtyTbZu9NGLPo/PRYD9PAPOoU6Bp9fhOCjV4ShZQQcEnZ+iIsmGAoCR08JAW/kVsu55U 8EHxuCv7Tq0L3LhUPqfbmbCO2bZP11d5kAREd4kJxA7o5SO5e2VtDJurf5COjmGXRl31AuafeXLZdtWzdSOuy5/ Lw5k+X2LnKohZYupzZ3I7O+K1x2MOuXMXgg/ZdOyyrkaMGC78s6EFhVGoTfZUU/lH8TE6v2BL0RSqbD4Ty5YZ81 +ZMezUvuyTlY7OdA6Jda/hPd teerapat_khu@truecorp.co.th 8
  • 9. SSH-Keygen $ ssh-keygen –t rsa –C “teerapat_khu@truecorp.co.th” Generate public/private rsa key pair. Enter file in which to save the key /home/teerapat_khu/.ssh/id_rsa: [Press enter] Enter passphrase (empty no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again] Your identification has been saved in /home/teerapat_khu/.ssh/ida_rsa. Your public key has been saved in /home/teerapat_khu/.ssh/ida_rsa.pub. The key fingerprint is: bd:10:cf:76:23:4c:c7:34:83:26:ba:f4:c3:31:c1:00 teerapat_khu@truecorp.co.th $ cat /home/teerapat_khu/.ssh/ida_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJjw9w7vbV3bQZ9kWBCBTVK2vYIMX+k6Zo6hf/MDVE2dttCdQJ87+dDdO jRfudizsjge0nLb/pFfWtyTbZu9NGLPo/PRYD9PAPOoU6Bp9fhOCjV4ShZQQcEnZ+iIsmGAoCR08JAW/kVsu55U 8EHxuCv7Tq0L3LhUPqfbmbCO2bZP11d5kAREd4kJxA7o5SO5e2VtDJurf5COjmGXRl31AuafeXLZdtWzdSOuy5/ Lw5k+X2LnKohZYupzZ3I7O+K1x2MOuXMXgg/ZdOyyrkaMGC78s6EFhVGoTfZUU/lH8TE6v2BL0RSqbD4Ty5YZ81 +ZMezUvuyTlY7OdA6Jda/hPd teerapat_khu@truecorp.co.th 9 File Copy this
  • 10. Add key to SSH Agent $ eval `ssh-agent -s` Agent pid 7260 10
  • 11. Add key to SSH Agent $ eval `ssh-agent -s` Agent pid 7260 $ ssh-add /home/teerapat_khu/.ssh/ida_rsa.pub Enter passphrase for ssh-add /home/teerapat_khu/.ssh/ida_rsa.pub: 11
  • 12. PuTTY Key Generator 12 • On windows use Putty Key generator
  • 13. PuTTY Key Generator 13 • On windows use Putty Key generator Copy this Save to file
  • 14. Add SSH Key to SourceTree 14
  • 15. Add SSH Key to Gitlab 15 Profile Settings > SSH Keys
  • 16. Add SSH Key to Gitlab (cont.) 16 Profile Settings > SSH Keys > Add SSH Key
  • 17. SourceTree: Create New Repository 17
  • 18. Git: Create New Repository $ git init Initialized empty Git repository in /home/teerapat_khu/mywebapp/.git/ 18
  • 20. Git: Clone Gitlab Project $ git clone git@gitlab.vcs.true.th:Teera36/my- webapp.git Cloning into 'my-webapp'... warning: You appear to have cloned an empty repository. Checking connectivity... done. 20
  • 21. SourceTree: Add Remote Repository 21
  • 22. SourceTree: Add Remote Repository (cont.) 22
  • 23. SourceTree: Add Remote Repository (cont.) 23
  • 24. SourceTree: Add Remote Repository (cont.) 24
  • 25. Git: Add Remote Repository $ git remote add gitlab-vcs git@gitlab.vcs.true.th:Teera36/my- webapp.git 25
  • 27. SourceTree: Add file to staged 27
  • 28. Git: Add file to staged $ git add . 28
  • 30. Git: Commit $ git commit –m “First commit” [develop a75c276] First commit 18 files changed, 724 insertions(+) create mode 100755 .bowerrc create mode 100755 .editorconfig create mode 100755 .gitattributes create mode 100755 .gitignore create mode 100755 .jshintrc create mode 100755 .yo-rc.json create mode 100755 Gruntfile.js create mode 100755 app/favicon.ico create mode 100755 app/index.html create mode 100755 app/robots.txt create mode 100755 app/scripts/main.js create mode 100755 app/styles/main.css create mode 100755 bower.json create mode 100755 package.json create mode 100755 test/.bowerrc create mode 100755 test/bower.json create mode 100755 test/index.html create mode 100755 test/spec/test.js 30
  • 32. Git: Log/History $ git log commit a75c2764c720fd4fccab54d8ef1e8a7bb6244060 Author: teerapat_khu <teerapat_khu@truecorp.co.th> Date: Thu Jun 11 19:02:27 2015 +0700 First commit 32
  • 33. SourceTree: Push to Remote Repo 33
  • 34. Git: Push to Remote Repo $ git push –u gitlab-vcs master Counting objects: 2, done. Writing objects: 100% (2/2), 161 bytes | 0 bytes/s, done. Total 2 (delta 0), reused 0 (delta 0) To git@gitlab.vcs.true.th:Teera36/my-webapp.git * [new branch] master -> master Branch master set up to track remote branch master from gitlab- vcs. 34
  • 36. Git: Log/History $ git log commit a75c2764c720fd4fccab54d8ef1e8a7bb6244060 Author: teerapat_khu <teerapat_khu@truecorp.co.th> Date: Thu Jun 11 19:02:27 2015 +0700 First commit 36
  • 37. SourceTree: Git Flow initial 37
  • 38. Git: Git Flow initial $ git flow init No branches exist yet. Base branches must be created now. Branch name for production releases: [master] Branch name for "next release" development: [develop] How to name your supporting branch prefixes? Feature branches? [feature/] Release branches? [release/] Hotfix branches? [hotfix/] Support branches? [support/] Version tag prefix? [] 38
  • 40. Git: Log/History $ git branch * develop master 40
  • 41. SourceTree: Start new feature 41
  • 42. SourceTree: Start new feature (cont.) 42
  • 43. Git: Start new feature $ git flow feature start Create_Index_Page Switched to a new branch 'feature/Create_Index_Page' Summary of actions: - A new branch 'feature/Create_Index_Page' was created, based on 'develop' - You are now on branch 'feature/Create_Index_Page' Now, start committing on your feature. When done, use: git flow feature finish Create_Index_Page 43
  • 45. Git: Log/History $ git branch develop * feature/Create_Index_Page master 45
  • 47. Git: New Feature (add) $ vi app/index.html $ git status On branch feature/Create_Index_Page Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: app/index.html no changes added to commit (use "git add" and/or "git commit -a") 47
  • 49. Git: New Feature (add) $ git add . 49
  • 50. SourceTree: New Feature (commit) 50
  • 51. Git: New Feature (commit) $ git commit -m "edit for include css bower file" [feature/Create_Index_Page 4121469] edit for include css bower file 1 file changed, 1 insertion(+), 1 deletion(-) 51
  • 53. Git: New Feature (log) $ git branch develop * feature/Create_Index_Page master $ git log --graph --pretty=oneline --abbrev-commit * 4121469 edit for include css bower file * a75c276 First commit 53
  • 56. Git: Finish Feature $ git flow feature finish Create_Index_Page Switched to branch 'develop' Updating a75c276..4121469 Fast-forward app/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Deleted branch feature/Create_Index_Page (was 4121469). Summary of actions: - The feature branch 'feature/Create_Index_Page' was merged into 'develop' - Feature branch 'feature/Create_Index_Page' has been removed - You are now on branch 'develop' 56
  • 58. Git: Log/History $ git branch * develop master $ git log --graph --pretty=oneline --abbrev-commit * 4121469 edit for include css bower file * a75c276 First commit 58
  • 59. SourceTree: Start New Release 59
  • 60. SourceTree: Start New Release 60
  • 61. Git: Start New Release $ git flow release start MyWebApp-1.0-unstable Switched to a new branch 'release/MyWebApp-1.0-unstable' Summary of actions: - A new branch 'release/MyWebApp-1.0-unstable' was created, based on 'develop' - You are now on branch 'release/MyWebApp-1.0-unstable' Follow-up actions: - Bump the version number now! - Start committing last-minute fixes in preparing your release - When done, run: git flow release finish 'MyWebApp-1.0-unstable' 61
  • 62. Git: Log/History $ git branch develop master * release/MyWebApp-1.0-unstable $ git log --graph --pretty=oneline --abbrev-commit * 4121469 edit for include css bower file * a75c276 First commit 62
  • 64. SourceTree: Finish Release and add Tag 64
  • 65. Git: Finish Release $ git flow release finish MyWebApp-1.0-unstable Switched to branch 'master' Your branch is up-to-date with 'gitlab-vcs/master'. Merge made by the 'recursive' strategy. .bowerrc | 3 ++ .editorconfig | 21 +++++++++ .gitattributes | 1 + Deleted branch release/MyWebApp-1.0-unstable (was 4121469). Summary of actions: - Latest objects have been fetched from 'origin' - Release branch has been merged into 'master' - The release was tagged 'MyWebApp-1.0-unstable' - Release branch has been back-merged into 'develop' - Release branch 'release/MyWebApp-1.0-unstable' has been deleted 65
  • 67. Git: Log/History $ git branch develop * master $ git log --graph --pretty=oneline --abbrev-commit * 8811504 Merge branch 'release/MyWebApp-1.0-unstable' | | * 4121469 edit for include css bower file | | |/ * a75c276 First commit 67
  • 69. Gitlab: Create New Branch 69
  • 70. Gitlab: Create New Branch 70
  • 71. SourceTree: Fetch From Remote Repo 71
  • 72. Git: Fetch From Remote Repo $ git fetch gitlab-vcs From gitlab.vcs.true.th:Teera36/my-webapp * [new branch] develop -> gitlab-vcs/develop 72
  • 73. SourceTree: Push to Remote Repo 73
  • 74. Git: Push to Remote Repo $ git push -u gitlab-vcs develop Total 0 (delta 0), reused 0 (delta 0) To git@gitlab.vcs.true.th:Teera36/my-webapp.git b28c91b..4121469 develop -> develop Branch develop set up to track remote branch develop from gitlab-vcs. 74
  • 77. Git: Log/History $ git checkout develop Switched to branch 'develop' Your branch is up-to-date with 'gitlab-vcs/develop'. $ vim app/index.html $ git add . $ git commit -m "Add "Sign up" Menu" [develop 13c959a] Add "Sign up" Menu 1 file changed, 1 insertion(+) $ git log --graph --pretty=oneline --abbrev-commit * 13c959a Add "Sign up" Menu * 4121469 edit for include css bower file * a75c276 First commit 77
  • 78. SourceTree: Add Commit on Develop 78
  • 79. Git: Add Commit on Develop $ vim app/index.html $ git add . $ git commit -m “Fix css" [develop 1c8980f] Fix css 1 file changed, 1 insertion(+) $ git log --graph --pretty=oneline --abbrev- commit * 1c8980f Fix css * 13c959a Add "Sign up" Menu * 4121469 edit for include css bower file * a75c276 First commit 79
  • 80. SourceTree: Start New Release 80
  • 81. SourceTree: Start New Release 81
  • 82. Git: Start New Release $ git flow release start MyWebApp-1.1-unstable Switched to a new branch 'release/MyWebApp-1.1-unstable' Summary of actions: - A new branch 'release/MyWebApp-1.1-unstable' was created, based on 'develop' - You are now on branch 'release/MyWebApp-1.1-unstable' Follow-up actions: - Bump the version number now! - Start committing last-minute fixes in preparing your release - When done, run: git flow release finish 'MyWebApp-1.1-unstable' 82
  • 84. Git Log/History $ git branch develop master * release/MyWebApp-1.1-unstable 84
  • 87. Git: Finish Release $ git flow release finish MyWebApp-1.1-unstable Switched to branch 'master' Your branch is up-to-date with 'gitlab-vcs/master'. Merge made by the 'recursive' strategy. app/index.html | 2 ++ 1 file changed, 2 insertions(+) Deleted branch release/MyWebApp-1.1-unstable (was 1c8980f). Summary of actions: - Latest objects have been fetched from 'origin' - Release branch has been merged into 'master' - The release was tagged 'MyWebApp-1.1-unstable' - Release branch has been back-merged into 'develop' - Release branch 'release/MyWebApp-1.1-unstable' has been deleted 87
  • 89. Git: Log/History $ git branch develop * master $ git log --graph --pretty=oneline --abbrev- commit * e7fe2e7 Merge branch 'release/MyWebApp-1.1-unstable' | | * 1c8980f Fix css | * 13c959a Add "Sign up" Menu * | 8811504 Merge branch 'release/MyWebApp-1.0-unstable' | | |/ | * 4121469 edit for include css bower file | | |/ * a75c276 First commit 89
  • 90. SourceTree: Push to Remote Repo 90
  • 91. Git: Push to Remote Repo $ git push -u gitlab-vcs develop Counting objects: 8, done. Delta compression using up to 4 threads. Compressing objects: 100% (8/8), done. Writing objects: 100% (8/8), 701 bytes | 0 bytes/s, done. Total 8 (delta 6), reused 0 (delta 0) To git@gitlab.vcs.true.th:Teera36/my-webapp.git 4121469..1c8980f develop -> develop Branch develop set up to track remote branch develop from gitlab-vcs. 91
  • 93. Gitlab: Merge Request (code review) 93
  • 94. Gitlab: Merge Request (code review) 94