SlideShare a Scribd company logo
www.atmire.com
Introduction to Github
Modern source code management for DSpace
Ivan Masár
Bram Luyten
OUTLINE
What are Git and Github
Using Git and Github locally at your
institution
Contributing back to DSpace
WHAT ARE GIT AND GITHUB
Decentralized source code management protocol
Free web based software project hosting
Git is used as underlying source code
management protocol
TRADITIONAL SOURCE CODE MANAGEMENT
GIT
USING GIT AND GITHUB
Creating an account on Github
Contributing through the Github Web UI
Installing Git on your laptop
Using Git on Windows
CREATING AN ACCOUNT ON GITHUB.COM
Signup on Github.com
FORK THE DSPACE PROJECT
http://github.com/DSpace/DSpace
MODIFYING THE CODE IN YOUR OWN FORK
Create a new branch. Do NOT work on master
EDIT DSPACE.CFG
Standard mode
EDIT DSPACE.CFG
Zen mode
PREVIEW: OVERVIEW OF CHANGES
Red line: deleted - Green line: added
INSTALLING GIT ON WINDOWS (1)
INSTALLING GIT ON WINDOWS (2)
INSTALLING GIT ON WINDOWS (3)
INSTALLING GIT ON WINDOWS (4)
Run > bash
Using Github for DSpace development
USING GIT ON WINDOWS
Edit & Paste into Bash interpreter
Using Github for DSpace development
Using Github for DSpace development
WORKING WITH REMOTE REPOSITORIES (1)
git remote add upstream git://github.com/DSpace/DSpace.git
upstream is the local name for this remote repository
the url is now associated with the name “upstream”
git fetch upstream
getting up to date list of branches from the remote
repository.
git pull upstream master
get the actual changes of the master branch and merge
them with your local code.
Goal: keeping your repository up to date
WORKING WITH A LOCAL BRANCH
git branch
lists branches and tells you which branch you’re on
git branch mylocalbugfix
create a branch from the current branch you’re on
git checkout mylocalbugfix
move to the branch you just created
git checkout master
go back to the master branch
git branch -d mylocalbugfix
deleting the branch you just created. This will give you a
warning if the code is still only in your local clone. -D allows
you to force delete
git branch -D mylocalbugfix
COMMITTING TO YOUR LOCAL BRANCH
git commit -a
This will commit all current changes and open up your editor to
provide a commit message.
-a will commit all current changes
An alternative is that you explicitly specify which files need to
be committed.
git add path/to/file
MORE ON THE COMMAND LINE GIT
http://bit.ly/learning-git
DSPACE CONTRIBUTION WORKFLOW
Lowering your own maintenance costs
Prestige and achievement
Giving & receiving community support
Learn from others
Fun
BUG TRACKING AND FEATURE REQUESTS
http://jira.duraspace.org/browse/DS
CREATING A NEW JIRA ISSUE
HIGHLEVEL DSPACE GITHUB WORKFLOW
“Fork”
Contributor copies the DSpace code repository
to his/her own Github account
“Clone”
Checks out a local copy of the newly created fork
“Branch”
Creates a branch for development work related
to a particular issue in JIRA
“Commit”
Modifying the code locally
“Publish Branch”
Pushing your changes to your personal Github
account
FINAL STEP: FIRING YOUR PULL REQUEST
Done! Your code can now be
evaluated for inclusion
AFTER FIRING THE PULL REQUEST
Generally, your code will be evaluated by 2
committers prior to inclusion
Further discussion about your approach
can follow on JIRA or in Github comments
You can help the committers by doing your
own evaluation on pull requests
by others
www.atmire.com
We look forward to
your contributions!
http://jira.duraspace.org/browse/DS
http://github.com/DSpace/DSpace
https://wiki.duraspace.org/display/DSPACE/Development+with+Git
CREDITS
http://earaya.github.io/glearn/#/2/6
http://git.or.cz/course/svn.html
http://pcottle.github.io/learnGitBranching/
Ad

More Related Content

What's hot (20)

Workflows using Git GitHub | Edureka
Workflows using Git GitHub | EdurekaWorkflows using Git GitHub | Edureka
Workflows using Git GitHub | Edureka
Edureka!
 
Git
GitGit
Git
Mayank Patel
 
Unlimited Staging Environments on Kubernetes
Unlimited Staging Environments on KubernetesUnlimited Staging Environments on Kubernetes
Unlimited Staging Environments on Kubernetes
Erik Osterman
 
Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1
Omar Fathy
 
Version control git day03
Version control   git day03Version control   git day03
Version control git day03
Gourav Varma
 
Advance workshop on git
Advance workshop on gitAdvance workshop on git
Advance workshop on git
Himanshu Agrawal
 
What the Git? - WordCamp Atlanta
What the Git? - WordCamp AtlantaWhat the Git? - WordCamp Atlanta
What the Git? - WordCamp Atlanta
Nathaniel Schweinberg
 
Git & Github
Git & GithubGit & Github
Git & Github
Aman Lalpuria
 
Hacking Git and GitHub
Hacking Git and GitHubHacking Git and GitHub
Hacking Git and GitHub
Edureka!
 
Git and GitHub workflows
Git and GitHub workflowsGit and GitHub workflows
Git and GitHub workflows
Arthur Shvetsov
 
Know the Science behind WorkFlows using Git & GitHhub
Know the Science behind WorkFlows using Git & GitHhubKnow the Science behind WorkFlows using Git & GitHhub
Know the Science behind WorkFlows using Git & GitHhub
Edureka!
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
Jiwon Baek
 
Extra bit with git
Extra bit with gitExtra bit with git
Extra bit with git
Himanshu Agrawal
 
Git presentation
Git presentationGit presentation
Git presentation
Sai Kumar Satapathy
 
Git representation
Git representationGit representation
Git representation
Barnabas Makonda
 
Git & GitHub
Git & GitHubGit & GitHub
Git & GitHub
Cuong Ngo
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTree
Teerapat Khunpech
 
Git basics a starter on git and its ecosystem
Git basics  a starter on git and its ecosystemGit basics  a starter on git and its ecosystem
Git basics a starter on git and its ecosystem
François D'Agostini
 
沒有 GUI 的 Git
沒有 GUI 的 Git沒有 GUI 的 Git
沒有 GUI 的 Git
Chia Wei Tsai
 
Extra bit with git
Extra bit with gitExtra bit with git
Extra bit with git
gdgjss
 
Workflows using Git GitHub | Edureka
Workflows using Git GitHub | EdurekaWorkflows using Git GitHub | Edureka
Workflows using Git GitHub | Edureka
Edureka!
 
Unlimited Staging Environments on Kubernetes
Unlimited Staging Environments on KubernetesUnlimited Staging Environments on Kubernetes
Unlimited Staging Environments on Kubernetes
Erik Osterman
 
Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1
Omar Fathy
 
Version control git day03
Version control   git day03Version control   git day03
Version control git day03
Gourav Varma
 
Hacking Git and GitHub
Hacking Git and GitHubHacking Git and GitHub
Hacking Git and GitHub
Edureka!
 
Git and GitHub workflows
Git and GitHub workflowsGit and GitHub workflows
Git and GitHub workflows
Arthur Shvetsov
 
Know the Science behind WorkFlows using Git & GitHhub
Know the Science behind WorkFlows using Git & GitHhubKnow the Science behind WorkFlows using Git & GitHhub
Know the Science behind WorkFlows using Git & GitHhub
Edureka!
 
Git & GitHub
Git & GitHubGit & GitHub
Git & GitHub
Cuong Ngo
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTree
Teerapat Khunpech
 
Git basics a starter on git and its ecosystem
Git basics  a starter on git and its ecosystemGit basics  a starter on git and its ecosystem
Git basics a starter on git and its ecosystem
François D'Agostini
 
Extra bit with git
Extra bit with gitExtra bit with git
Extra bit with git
gdgjss
 

Similar to Using Github for DSpace development (20)

Introduction to git and Github
Introduction to git and GithubIntroduction to git and Github
Introduction to git and Github
Wycliff1
 
Improving your workflow with git
Improving your workflow with gitImproving your workflow with git
Improving your workflow with git
Dídac Ríos
 
Github By Nyros Developer
Github By Nyros DeveloperGithub By Nyros Developer
Github By Nyros Developer
Nyros Technologies
 
Git.pptx
Git.pptxGit.pptx
Git.pptx
GDSC UofT Mississauga
 
Practical git for developers
Practical git for developersPractical git for developers
Practical git for developers
Wim Godden
 
Git Commands Every Developer Should Know?
Git Commands Every Developer Should Know?Git Commands Every Developer Should Know?
Git Commands Every Developer Should Know?
9 series
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
Md Atique Ahmed Ziad
 
Version control git day02
Version control   git day02Version control   git day02
Version control git day02
Gourav Varma
 
Git for developers
Git for developersGit for developers
Git for developers
Hacen Dadda
 
git github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptxgit github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptx
AbelPhilipJoseph
 
Git single branch
Git single branchGit single branch
Git single branch
Carl Brown
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
Somkiat Puisungnoen
 
Git
GitGit
Git
Shinu Suresh
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Rick Umali
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control System
Victor Wong
 
Git
GitGit
Git
Majid Hajiloo
 
Switching to Git
Switching to GitSwitching to Git
Switching to Git
Stephen Yeargin
 
Version control git day03(amarnath dada)
Version control   git day03(amarnath dada)Version control   git day03(amarnath dada)
Version control git day03(amarnath dada)
Gourav Varma
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
Betclic Everest Group Tech Team
 
Git
GitGit
Git
Terry Wang
 
Introduction to git and Github
Introduction to git and GithubIntroduction to git and Github
Introduction to git and Github
Wycliff1
 
Improving your workflow with git
Improving your workflow with gitImproving your workflow with git
Improving your workflow with git
Dídac Ríos
 
Practical git for developers
Practical git for developersPractical git for developers
Practical git for developers
Wim Godden
 
Git Commands Every Developer Should Know?
Git Commands Every Developer Should Know?Git Commands Every Developer Should Know?
Git Commands Every Developer Should Know?
9 series
 
Version control git day02
Version control   git day02Version control   git day02
Version control git day02
Gourav Varma
 
Git for developers
Git for developersGit for developers
Git for developers
Hacen Dadda
 
git github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptxgit github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptx
AbelPhilipJoseph
 
Git single branch
Git single branchGit single branch
Git single branch
Carl Brown
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Rick Umali
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control System
Victor Wong
 
Version control git day03(amarnath dada)
Version control   git day03(amarnath dada)Version control   git day03(amarnath dada)
Version control git day03(amarnath dada)
Gourav Varma
 
Ad

More from Bram Luyten (20)

Archiving Sensitive Data
Archiving Sensitive DataArchiving Sensitive Data
Archiving Sensitive Data
Bram Luyten
 
Update on DSpace 7
Update on DSpace 7Update on DSpace 7
Update on DSpace 7
Bram Luyten
 
DSpace 5.7 and 6.1 Preview
DSpace 5.7 and 6.1 PreviewDSpace 5.7 and 6.1 Preview
DSpace 5.7 and 6.1 Preview
Bram Luyten
 
Working for Atmire
Working for AtmireWorking for Atmire
Working for Atmire
Bram Luyten
 
DSpace repositories today and tomorrow
DSpace repositories today and tomorrowDSpace repositories today and tomorrow
DSpace repositories today and tomorrow
Bram Luyten
 
DSpace UI prototype dsember
DSpace UI prototype dsemberDSpace UI prototype dsember
DSpace UI prototype dsember
Bram Luyten
 
Metadata based statistics for DSpace
Metadata based statistics for DSpaceMetadata based statistics for DSpace
Metadata based statistics for DSpace
Bram Luyten
 
Durable Item Relations for DSpace
Durable Item Relations for DSpaceDurable Item Relations for DSpace
Durable Item Relations for DSpace
Bram Luyten
 
Email deposit
Email depositEmail deposit
Email deposit
Bram Luyten
 
So we all have ORCID integrations, now what?
So we all have ORCID integrations, now what?So we all have ORCID integrations, now what?
So we all have ORCID integrations, now what?
Bram Luyten
 
Git and Github - a 90 Minute interactive workshop
Git and Github - a 90 Minute interactive workshopGit and Github - a 90 Minute interactive workshop
Git and Github - a 90 Minute interactive workshop
Bram Luyten
 
DSpace Today and Tomorrow
DSpace Today and TomorrowDSpace Today and Tomorrow
DSpace Today and Tomorrow
Bram Luyten
 
Mirage 2: A responsive user interface for DSpace
Mirage 2: A responsive user interface for DSpaceMirage 2: A responsive user interface for DSpace
Mirage 2: A responsive user interface for DSpace
Bram Luyten
 
Dépôts institutionnels et collections spéciales en DSpace
Dépôts institutionnels et collections spéciales en DSpaceDépôts institutionnels et collections spéciales en DSpace
Dépôts institutionnels et collections spéciales en DSpace
Bram Luyten
 
Secrets of the DSpace Submission Form
Secrets of the DSpace Submission FormSecrets of the DSpace Submission Form
Secrets of the DSpace Submission Form
Bram Luyten
 
Introduction to XMLUI and Mirage Theming for DSpace 3
Introduction to XMLUI and Mirage Theming for DSpace 3Introduction to XMLUI and Mirage Theming for DSpace 3
Introduction to XMLUI and Mirage Theming for DSpace 3
Bram Luyten
 
What's in Store for DSpace 4?
What's in Store for DSpace 4?What's in Store for DSpace 4?
What's in Store for DSpace 4?
Bram Luyten
 
ORCID for DSpace
ORCID for DSpaceORCID for DSpace
ORCID for DSpace
Bram Luyten
 
Workshop: Google Analytics for DSpace
Workshop: Google Analytics for DSpaceWorkshop: Google Analytics for DSpace
Workshop: Google Analytics for DSpace
Bram Luyten
 
DSpace in Belgium and beyond
DSpace in Belgium and beyondDSpace in Belgium and beyond
DSpace in Belgium and beyond
Bram Luyten
 
Archiving Sensitive Data
Archiving Sensitive DataArchiving Sensitive Data
Archiving Sensitive Data
Bram Luyten
 
Update on DSpace 7
Update on DSpace 7Update on DSpace 7
Update on DSpace 7
Bram Luyten
 
DSpace 5.7 and 6.1 Preview
DSpace 5.7 and 6.1 PreviewDSpace 5.7 and 6.1 Preview
DSpace 5.7 and 6.1 Preview
Bram Luyten
 
Working for Atmire
Working for AtmireWorking for Atmire
Working for Atmire
Bram Luyten
 
DSpace repositories today and tomorrow
DSpace repositories today and tomorrowDSpace repositories today and tomorrow
DSpace repositories today and tomorrow
Bram Luyten
 
DSpace UI prototype dsember
DSpace UI prototype dsemberDSpace UI prototype dsember
DSpace UI prototype dsember
Bram Luyten
 
Metadata based statistics for DSpace
Metadata based statistics for DSpaceMetadata based statistics for DSpace
Metadata based statistics for DSpace
Bram Luyten
 
Durable Item Relations for DSpace
Durable Item Relations for DSpaceDurable Item Relations for DSpace
Durable Item Relations for DSpace
Bram Luyten
 
So we all have ORCID integrations, now what?
So we all have ORCID integrations, now what?So we all have ORCID integrations, now what?
So we all have ORCID integrations, now what?
Bram Luyten
 
Git and Github - a 90 Minute interactive workshop
Git and Github - a 90 Minute interactive workshopGit and Github - a 90 Minute interactive workshop
Git and Github - a 90 Minute interactive workshop
Bram Luyten
 
DSpace Today and Tomorrow
DSpace Today and TomorrowDSpace Today and Tomorrow
DSpace Today and Tomorrow
Bram Luyten
 
Mirage 2: A responsive user interface for DSpace
Mirage 2: A responsive user interface for DSpaceMirage 2: A responsive user interface for DSpace
Mirage 2: A responsive user interface for DSpace
Bram Luyten
 
Dépôts institutionnels et collections spéciales en DSpace
Dépôts institutionnels et collections spéciales en DSpaceDépôts institutionnels et collections spéciales en DSpace
Dépôts institutionnels et collections spéciales en DSpace
Bram Luyten
 
Secrets of the DSpace Submission Form
Secrets of the DSpace Submission FormSecrets of the DSpace Submission Form
Secrets of the DSpace Submission Form
Bram Luyten
 
Introduction to XMLUI and Mirage Theming for DSpace 3
Introduction to XMLUI and Mirage Theming for DSpace 3Introduction to XMLUI and Mirage Theming for DSpace 3
Introduction to XMLUI and Mirage Theming for DSpace 3
Bram Luyten
 
What's in Store for DSpace 4?
What's in Store for DSpace 4?What's in Store for DSpace 4?
What's in Store for DSpace 4?
Bram Luyten
 
ORCID for DSpace
ORCID for DSpaceORCID for DSpace
ORCID for DSpace
Bram Luyten
 
Workshop: Google Analytics for DSpace
Workshop: Google Analytics for DSpaceWorkshop: Google Analytics for DSpace
Workshop: Google Analytics for DSpace
Bram Luyten
 
DSpace in Belgium and beyond
DSpace in Belgium and beyondDSpace in Belgium and beyond
DSpace in Belgium and beyond
Bram Luyten
 
Ad

Recently uploaded (20)

Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Leading AI Innovation As A Product Manager - Michael Jidael
Leading AI Innovation As A Product Manager - Michael JidaelLeading AI Innovation As A Product Manager - Michael Jidael
Leading AI Innovation As A Product Manager - Michael Jidael
Michael Jidael
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5..."Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
Fwdays
 
Learn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step GuideLearn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step Guide
Marcel David
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
 
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from AnywhereAutomation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Lynda Kane
 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Hands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordDataHands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordData
Lynda Kane
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Leading AI Innovation As A Product Manager - Michael Jidael
Leading AI Innovation As A Product Manager - Michael JidaelLeading AI Innovation As A Product Manager - Michael Jidael
Leading AI Innovation As A Product Manager - Michael Jidael
Michael Jidael
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5..."Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
Fwdays
 
Learn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step GuideLearn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step Guide
Marcel David
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
 
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from AnywhereAutomation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Lynda Kane
 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Hands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordDataHands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordData
Lynda Kane
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 

Using Github for DSpace development

  • 1. www.atmire.com Introduction to Github Modern source code management for DSpace Ivan Masár Bram Luyten
  • 2. OUTLINE What are Git and Github Using Git and Github locally at your institution Contributing back to DSpace
  • 3. WHAT ARE GIT AND GITHUB Decentralized source code management protocol Free web based software project hosting Git is used as underlying source code management protocol
  • 5. GIT
  • 6. USING GIT AND GITHUB Creating an account on Github Contributing through the Github Web UI Installing Git on your laptop Using Git on Windows
  • 7. CREATING AN ACCOUNT ON GITHUB.COM Signup on Github.com
  • 8. FORK THE DSPACE PROJECT http://github.com/DSpace/DSpace
  • 9. MODIFYING THE CODE IN YOUR OWN FORK Create a new branch. Do NOT work on master
  • 12. PREVIEW: OVERVIEW OF CHANGES Red line: deleted - Green line: added
  • 13. INSTALLING GIT ON WINDOWS (1)
  • 14. INSTALLING GIT ON WINDOWS (2)
  • 15. INSTALLING GIT ON WINDOWS (3)
  • 16. INSTALLING GIT ON WINDOWS (4) Run > bash
  • 18. USING GIT ON WINDOWS Edit & Paste into Bash interpreter
  • 21. WORKING WITH REMOTE REPOSITORIES (1) git remote add upstream git://github.com/DSpace/DSpace.git upstream is the local name for this remote repository the url is now associated with the name “upstream” git fetch upstream getting up to date list of branches from the remote repository. git pull upstream master get the actual changes of the master branch and merge them with your local code. Goal: keeping your repository up to date
  • 22. WORKING WITH A LOCAL BRANCH git branch lists branches and tells you which branch you’re on git branch mylocalbugfix create a branch from the current branch you’re on git checkout mylocalbugfix move to the branch you just created git checkout master go back to the master branch git branch -d mylocalbugfix deleting the branch you just created. This will give you a warning if the code is still only in your local clone. -D allows you to force delete git branch -D mylocalbugfix
  • 23. COMMITTING TO YOUR LOCAL BRANCH git commit -a This will commit all current changes and open up your editor to provide a commit message. -a will commit all current changes An alternative is that you explicitly specify which files need to be committed. git add path/to/file
  • 24. MORE ON THE COMMAND LINE GIT http://bit.ly/learning-git
  • 25. DSPACE CONTRIBUTION WORKFLOW Lowering your own maintenance costs Prestige and achievement Giving & receiving community support Learn from others Fun
  • 26. BUG TRACKING AND FEATURE REQUESTS http://jira.duraspace.org/browse/DS
  • 27. CREATING A NEW JIRA ISSUE
  • 28. HIGHLEVEL DSPACE GITHUB WORKFLOW “Fork” Contributor copies the DSpace code repository to his/her own Github account “Clone” Checks out a local copy of the newly created fork “Branch” Creates a branch for development work related to a particular issue in JIRA “Commit” Modifying the code locally “Publish Branch” Pushing your changes to your personal Github account
  • 29. FINAL STEP: FIRING YOUR PULL REQUEST Done! Your code can now be evaluated for inclusion
  • 30. AFTER FIRING THE PULL REQUEST Generally, your code will be evaluated by 2 committers prior to inclusion Further discussion about your approach can follow on JIRA or in Github comments You can help the committers by doing your own evaluation on pull requests by others
  • 31. www.atmire.com We look forward to your contributions! http://jira.duraspace.org/browse/DS http://github.com/DSpace/DSpace https://wiki.duraspace.org/display/DSPACE/Development+with+Git