This document discusses version control systems, Git, and Bitbucket. It provides an overview of version control, describes why it is useful, and discusses different version control systems including local, centralized, and distributed systems. It focuses on Git, explaining what it is, why it was created, how it works and differs from other version control systems. Finally, it covers Bitbucket, describing what it is, why developers should use it, how to create repositories on it, and how to integrate it with Eclipse.
Software Versioning with Bitbucket and EclipseHüseyin Ergin
This is a presentation I have prepared for a software engineering class that I am a teaching assistant. It summarizes versioning with a repo on bitbucket using eclipse's own git client. Thanks to Conner Hansen for some slides.
With these slides we introduce the concept of source control and teach the core features to using Git, GitHub and BitBucket. You can find the accompanying video here. https://youtu.be/lZpNrCgGvuI
Introduction to Git and Github - Google Developer Student Clubs CET, TrivandrumAbhijitNarayan2
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. This will be a beginner friendly session where we will explain to you how Git and Github works and how to use it for your future projects as well!
Software Versioning with Bitbucket and EclipseHüseyin Ergin
This is a presentation I have prepared for a software engineering class that I am a teaching assistant. It summarizes versioning with a repo on bitbucket using eclipse's own git client. Thanks to Conner Hansen for some slides.
With these slides we introduce the concept of source control and teach the core features to using Git, GitHub and BitBucket. You can find the accompanying video here. https://youtu.be/lZpNrCgGvuI
Introduction to Git and Github - Google Developer Student Clubs CET, TrivandrumAbhijitNarayan2
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. This will be a beginner friendly session where we will explain to you how Git and Github works and how to use it for your future projects as well!
Basic Introduction to Git and Github. Covers the basic work flow of init, clone, add, commit and push. Other commands like git remote, git pull etc are briefly touched.
One of the biggest advantages of Git is its branching capabilities. Unlike centralized version control systems, Git branches are cheap and easy to merge. This facilitates the feature branch workflow popular with many Git users.
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Simplilearn
This presentation on Git will help you understand version control system, distributed version control system, what is Git, Git vs GitHub, Git architecture, fork & clone, collaborators, branch, merge & rebase, various Git commands and at the end you will also see a demo on Git. Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for software development, but it can be used to keep track of changes in any files. This course enables you to learn and solve versioning problems with your files and codes. Now let us get started and understand what is Git along with a demo.
Below topics are explained in this Git presentation:
1. Version control system
2. Distributed version control system
3. What is Git?
4. Git vs GitHub
5. Git architecture
6. Fork and clone
7. Collaborators
8. Branch, merge and rebase
9. Commands in Git
10. Git demo
Why learn DevOps?
Simplilearn’s DevOps training course is designed to help you become a DevOps practitioner and apply the latest in DevOps methodology to automate your software development lifecycle right out of the class. You will master configuration management; continuous integration deployment, delivery and monitoring using DevOps tools such as Git, Docker, Jenkins, Puppet and Nagios in a practical, hands-on and interactive approach. The DevOps training course focuses heavily on the use of Docker containers, a technology that is revolutionizing the way apps are deployed in the cloud today and is a critical skillset to master in the cloud age.
After completing the DevOps training course you will achieve hands-on expertise in various aspects of the DevOps delivery model. The practical learning outcomes of this Devops training course are:
An understanding of DevOps and the modern DevOps toolsets
The ability to automate all aspects of a modern code delivery and deployment pipeline using:
1. Source code management tools
2. Build tools
3. Test automation tools
4. Containerization through Docker
5. Configuration management tools
6. Monitoring tools
Who should take this course?
DevOps career opportunities are thriving worldwide. DevOps was featured as one of the 11 best jobs in America for 2017, according to CBS News, and data from Payscale.com shows that DevOps Managers earn as much as $122,234 per year, with DevOps engineers making as much as $151,461. DevOps jobs are the third-highest tech role ranked by employer demand on Indeed.com but have the second-highest talent deficit.
1. This DevOps training course will be of benefit the following professional roles:
2. Software Developers
3. Technical Project Managers
4. Architects
5. Operations Support
6. Deployment engineers
7. IT managers
8. Development managers
Learn more at: https://www.simplilearn.com/
VCS: Version Control System
Git repository
Various Git Commands and their use
GitHub Local Repo and cloning a repo form remote server
use of git and its importance in todays IT Industry
● For most of the basic interactions with git you’ll mainly use 7 commands that we’ll cover here
git commands ● git init ● git clone ● git log ● git diff ● git status ● git add ● git commit
branching merging and git workflow
Basic Introduction to Git and Github. Covers the basic work flow of init, clone, add, commit and push. Other commands like git remote, git pull etc are briefly touched.
One of the biggest advantages of Git is its branching capabilities. Unlike centralized version control systems, Git branches are cheap and easy to merge. This facilitates the feature branch workflow popular with many Git users.
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Simplilearn
This presentation on Git will help you understand version control system, distributed version control system, what is Git, Git vs GitHub, Git architecture, fork & clone, collaborators, branch, merge & rebase, various Git commands and at the end you will also see a demo on Git. Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for software development, but it can be used to keep track of changes in any files. This course enables you to learn and solve versioning problems with your files and codes. Now let us get started and understand what is Git along with a demo.
Below topics are explained in this Git presentation:
1. Version control system
2. Distributed version control system
3. What is Git?
4. Git vs GitHub
5. Git architecture
6. Fork and clone
7. Collaborators
8. Branch, merge and rebase
9. Commands in Git
10. Git demo
Why learn DevOps?
Simplilearn’s DevOps training course is designed to help you become a DevOps practitioner and apply the latest in DevOps methodology to automate your software development lifecycle right out of the class. You will master configuration management; continuous integration deployment, delivery and monitoring using DevOps tools such as Git, Docker, Jenkins, Puppet and Nagios in a practical, hands-on and interactive approach. The DevOps training course focuses heavily on the use of Docker containers, a technology that is revolutionizing the way apps are deployed in the cloud today and is a critical skillset to master in the cloud age.
After completing the DevOps training course you will achieve hands-on expertise in various aspects of the DevOps delivery model. The practical learning outcomes of this Devops training course are:
An understanding of DevOps and the modern DevOps toolsets
The ability to automate all aspects of a modern code delivery and deployment pipeline using:
1. Source code management tools
2. Build tools
3. Test automation tools
4. Containerization through Docker
5. Configuration management tools
6. Monitoring tools
Who should take this course?
DevOps career opportunities are thriving worldwide. DevOps was featured as one of the 11 best jobs in America for 2017, according to CBS News, and data from Payscale.com shows that DevOps Managers earn as much as $122,234 per year, with DevOps engineers making as much as $151,461. DevOps jobs are the third-highest tech role ranked by employer demand on Indeed.com but have the second-highest talent deficit.
1. This DevOps training course will be of benefit the following professional roles:
2. Software Developers
3. Technical Project Managers
4. Architects
5. Operations Support
6. Deployment engineers
7. IT managers
8. Development managers
Learn more at: https://www.simplilearn.com/
VCS: Version Control System
Git repository
Various Git Commands and their use
GitHub Local Repo and cloning a repo form remote server
use of git and its importance in todays IT Industry
● For most of the basic interactions with git you’ll mainly use 7 commands that we’ll cover here
git commands ● git init ● git clone ● git log ● git diff ● git status ● git add ● git commit
branching merging and git workflow
This ppt will give you a complete understanding of the Git and GitHub. Also you will get to know the basic terminology which is required when you deal with Git and GitHub
Advanced Git: A talk on the finer parts of Git.
Covering basic to somewhat advanced Git usage for development tasks. Goes into some detail on some parts of Git that may confuse many
GitHub is a web-based hosting service for version control using git. It is mostly used for computer code. It offers all of the distributed version control and source code management (SCM) functionality of Git as well as adding its own features. It provides access control and several collaboration features such as bug tracking, feature requests, task management, and wikis for every project
2. IDEA BEHIND VERSION CONTROL
❑ Different releases of a product
❑ Variations for different platforms
• Hardware and software
❑ Versions within a development cycle
• Test release with debugging code
• Alpha, beta of final release
❑ Each time we may edit a program on recommendation or
fixing bugs
3. VERSION CONTROL
❑ Version control is a system that records changes to a file
or set of files over time so that you can recall specific
versions later.
❑ In particular, allows
• old versions to be recovered
• multiple versions to exist simultaneously
4. WHY USE VERSION CONTROL?
❑ Because everyone does
• A basic software development tool
❑ Because it is useful
• We will want old/multiple versions
• Without version control, can’t recreate project history
❑ Because we require it
• For our own good
• It allows you to revert files back to a previous state
• If we screw things up or lose files, we can easily recover
9. GIT : WHAT, WHY?
❑ Distributed revision control system
❑ Originally developed by Linus Torvalds for the
development of the Linux Kernel in 2005
❑ Focus on speed and efficiency
❑ Guard against data corruption, never lose data without
intervention
❑ Strong support for non-linear development (thousands of
parallel branches)
❑ Able to handle large projects like the Linux kernel
efficiently(speed and data size)
❑ Simple design
10. GIT OVER OTHER VCS
❑ The major difference between Git and any other VCS is the
way Git thinks about its data.
❑ Conceptually, most other systems store information as a list of
file-based changes.
❑ They think of the information they keep as a set of files and the
changes made to each file over time.
❑ But, Git thinks about its data more like a stream of snapshots.
❑ Every time we commit, or save the state of our project in Git, it
basically takes a picture of what all our files look like at that
moment and stores a reference to that snapshot.
❑ To be efficient, if files have not changed, Git doesn’t store the
file again, just a link to the previous identical file it has already
stored.
21. CREATE A GIT REPO
❑ If we’re starting to track an existing project in Git, we need to
go to the project’s directory and type ‘git init’
❑ This creates a new subdirectory named .git that contains all of
your necessary repository files – a Git repository skeleton
22. CLONING AN EXISTING REPOSITORY
For example, if you want to clone the Git linkable library
called libgit2, you can do so like this:
If you want to clone the repository into a directory named
something other than “libgit2”, you can specify that as the
next command-line option:
git clone [url]]
29. STAGING MODIFIED FILES
Let’s change a file that was already tracked. If we change a
previously tracked file called “CONTRIBUTING.md” and then
run our git status command again, we get something that
looks like this:
30. STAGE THE MODIFIED FILE
Let’s run git add now to stage the “CONTRIBUTING.md” file,
and then run git status again:
53. Git task Notes Git Commands
Tell Git who you are Configure the author
name and email
address to be used
with your commits.
Note that Git strips
some characters (for
example trailing
periods)
from user.name.
git config --global
user.name "Sam
Smith“
git config --
global user.email
sam@example.com
Create a new local
Repository
git init
Checkout a repository Create a working copy
of a local repository:
git clone
/path/to/repository
For a remote server,
use:
git clone
username@host:/path/
to/repository
54. Git Task Notes Git Commands
Add Files Add one or more files to staging
(index):
git add <filename>
git add *
Commit Commit changes to head (but not
yet to the remote repository):
git commit -m "Commit
message"
Commit any files you've added
with git add, and also commit any
files you've changed since then:
git commit -a
Push Send changes to the master
branch of your remote repository:
git push origin master
Status List the files you've changed and
those you still need to add or
commit:
git status
55. Git Task Ntes Git Commands
Connect to a remote
repository
If you haven't connected your local
repository to a remote server, add the
server to be able to push to it:
git remote add origin <server>
List all currently configured remote
repositories:
List all currently configured
remote repositories:
Branches Create a new branch and switch to it: git checkout -b <branchname>
Switch from one branch to another: git checkout <branchname>
List all the branches in your repo, and
also tell you what branch you're
currently in:
git branch
Delete the feature branch: git branch -d <branchname>
Push the branch to your remote
repository, so others can use it:
git push origin <branchname>
Push all branches to your remote
repository:
git push --all origin
Delete a branch on your remote
repository:
git push origin :<branchname>
56. Git Task Notes Git Commands
Update from the remote
repository
Fetch and merge changes on the remote
server to your working directory:
git pull
To merge a different branch into your active
branch:
git merge <branchname>
View all the merge conflicts:
View the conflicts against the base file:
Preview changes, before merging:
git diff
git diff --base <filename>
git diff <sourcebranch>
<targetbranch>
After you have manually resolved any
conflicts, you mark the changed file:
git add <filename>
Undo Local changes If you mess up, you can replace the
changes in your working tree with the last
content in head:
Changes already added to the index, as
well as new files, will be kept.
git checkout -- <filename>
Instead, to drop all your local changes and
commits, fetch the latest history from the
server and point your local master branch at
it, do this:
git fetch origin
git reset --hard origin/master
58. WHAT IS IT?
❑ BitBucket is a web-based code server and also a great
management tool for software projects.
❑ On 29 September 2010, Bitbucket was acquired by VC-
funded Atlassian. Initially, Bitbucket only offered hosting
support for Mercurial projects. On 3 October 2011, Bitbucket
officially announced support for Git hosting.
59. WHY SHOULD WE USE IT?
❑ Bitbucket is completely free if you have a .edu email
address.
❑ Gives any one any number of repositories, free for only 5
users, otherwise see the payment on their site.
❑ Site: https://bitbucket.org
61. REPOSITORY PAGE
oNotice these buttons in the right.
oSimple design that gives you only what you want from a code hosting,
no noisy design.
oNotice the menu ( overview, source, commits, pull requests, issues,
wiki, downloads)
▪ This menu has the most important functionality that bitbucket
provide for us.
▪ In the right of the menu is the settings of repository
21 June 2015