Using Vagrant and VirtualBox to Run Sandbox Environments
|
|
- Domenic Bates
- 5 years ago
- Views:
Transcription
1 Using Vagrant and VirtualBox to Run Sandbox Environments One of the things that I ve done lately is to ensure that I keep my laptop clean of any development tools. The reason is that I have run into a lot of problems with conflicts around versions, platforms, and general oddities that come as I deploy more and more different environments onto a single machine. Using Virtualbox and Vagrant for Sandboxes Luckily, using Vagrant and VirtualBox is both free and simple. I ve even saved some of the steps by storing basic configs on my GitHub to share and to let the community save some steps. Install VirtualBox Got to and you will see a nice shiny button on the main page to take you to the latest download, or you can also just got to to see the various versions. In my case, I m running Mac OSX, so I will choose the appropriate version. Once it is installed (just take the defaults) then you can run VirtualBox for the first time to complete the initial configuration. Install VirtualBox Guest Additions When you launch VirtualBox for the first time, it will prompt you to install the VirtualBox Guest Additions. This is some add-on features to correct problems on some Linux guests. Since we are going to be using lots of Linux guests, you should run the update. There is no other configuration needed for your VirtualBox because we are going to let Vagrant do all of the configuration from here on in. Install Vagrant Go to to get the latest and greatest Vagrant version, and install for your particular Operating System. There are no configuration steps required at all, so just take the defaults and you will be ready to go in a few minutes once the install wizard completes. Install Git Client If you are running OSX, just try to run Git from the command line and it will prompt you to install Xcode. Follow the steps and you will be Git-tastic in no time. Unfortunately, it does take a long time and download a lot of other stuff along with the Git client. For Windows and Linux folks, go to and pick out the version of choice to install.
2 Create your GitHub Repository For my instances, I use the naming structure virtualbox-productname-sandbox, so if I want to create one to do some nginx testing, I would call it virtualbox-nginx-sandbox as an example. Go to your GitHub account and create a new repository: You will want to do the following steps: Name the repo (virtualbox-nginx-sandbox in my case Set the repo as Public Initialize with a README Add the Apache License 2.0
3 Next, let s get the URL of the git repo to download and work with: Use your nifty git command line to clone the repository and then we can get started with creating the basic machine:
4 Make sure that you cd into your folder for the next steps to create the configuration files. Configure a Basic Machine My goto standard is usually an Ubuntu LTS instance. This has been the classic for many build environments, so I will just need to set up a very simple Vagrantfile to do this. The Vagrantfile file contents will look as follows: # -*- mode: ruby -*- # vi: set ft=ruby : VAGRANTFILE_API_VERSION = "2" ENV['VAGRANT_DEFAULT_PROVIDER'] = 'virtualbox' Vagrant.configure(VAGRANTFILE_API_VERSION) do config config.vm.define mysandbox" do mysandbox mysandbox.vm.hostname = mysandbox" mysandbox.vm.box = "trusty-server" mysandbox.vm.box_url = " amd64-vbox.box" mysandbox.vm.provision :shell, :path => "build.sh" end end This basic configuration creates an Ubuntu machine named mysandbox and uses NAT networking on an internal network which will have access to the internet and your local network, but does not have a bridged NIC to connect back inside from external resources. You will see that it also calls a shell script named build.sh which is our configuration file to do the basic installs and any customized package deployments. For a basic machine, this is what the build.sh looks like: #!/bin/bash # build.sh Authors: Eric Wright (@DiscoPosse) export DEBIAN_FRONTEND=noninteractive echo "set grub-pc/install_devices /dev/sda" debconf-communicate sudo apt-get update && sudo apt-get upgrade -y
5 sudo apt-get install -y git vim openssh-server && sudo reboot We are setting the machine to run updates, a kernel upgrade to the latest revision, install a few packages, and then reboot. Configure your.gitignore The most important, but seemingly forgettable step is to create a.gitignore file which stops files from being ingested into a git repository. This is particularly helpful when you have downloads of base boxes, configuration files with passwords and other such local content you want to NOT go back up to the central repo. Here is my basic.gitignore file: *.box.vagrant/ The file is designed to not allow VirtualBox images to be captures, and it also protects the.vagrant folder which creates temporary SSH keys and other content that is mean to be volatile and instancespecific. Now you can simply do a git add to add your files, run a git commit to commit the changes, and finally a big old git push to push your changes up to the remote repository on GitHub. Running your Sandbox Instance It s as easy as vagrant up and once your instance is started, you can run vagrant ssh YOURHOSTNAME where YOURHOSTNAME is the name of the host from your Vagrantfile. Now you have a nifty little sandbox server to run all of your testing without having to much around with tons of configuration and local conflicts. WARNING: You have to remember that this is a sandbox instance and is not storing your changes anywhere except locally. Because you excluded the.box in our.gitignore file, the machine itself is not being backed up to the repository. You won t want to use GitHub to hold your sandbox servers, but you may want the internal code to be stored somewhere. For that reason, please make sure that back up any code you create or special files that need to be saved. Oops I need to Rebuild It s as easy as vagrant destroy and then running vagrant up and you are back up and running with your basic sandbox server. This is helpful when things go a little sideways and you need to go back to the beginning. You can also take snapshots within Virtualbox which I will put into another post soon. Happy sandboxing!
6 Updating Forked Git Repository from Upstream Source (aka Rebase all the things!) As you can imagine, the world of IaC (Infrastructure-as-Code) means that we are going to have to dabble a lot more in the world of code repositories. Git is the most common tool I have found in use for code version control, and along with it, Github.com is the most common place that people (including myself store their project code. All Forked Up When the first work happens with using Github is that you may find yourself forking a repository to create a point-in-time snapshot under your own repositories. This is done for a variety of reasons like contributing upstream code, and keeping a safe stable release of a particular codebase that could change and affect other work you are doing with it. As you can see in the image above, I have a forked copy of the Lattice framework from Cloud Foundry. Nice and easy to do, but as you look at the bottom of the image, you will also see that I ve been falling behind on updates. So, how does someone fix this situation? Let s assume that we are testing locally and find a bug, but then realize that the upstream repository has already fixed the bug. Rather than wiping out the repository altogether and re-cloning, let s fix it in place! Updating a Forked Repository from Upstream Source Let s jump in the command line, and see what s happening. In my lattice folder, I will do a git status to see the current state of things: We can see that we show as up to date, but I know that I am 649 commits behind the upstream source. Time to get ourselves up to date for real. The way we do this is by syncing up our repositories here locally, and then pushing the changes back up to our forked repository. First, let s check our remote source by typing git remote to see what s happening locally: We have one source called origin which is our forked repository. We are going to add one more source called upstream to point to the original repo using the command git remote add upstream in my case and then run our git remote again to confirm the change: Now we can see both of our sources. We are assuming that you are using the master branch of your
7 repo, but just in case, we can also do a git checkout master first for safety. As you can see in my case, it will complain that I am already on master and nothing will happen: Now let s do the next steps which is to fetch the upstream and rebase our local repo. Yes, these are funny sounding terms to some, but you will get used to them. This is done by using the git fetch upstream command followed by the git rebase upstream/master to sync them up: Lots of updates came down, and you can see that our rebase has done all the changes locally and if we had any updates, they would be left in place with the underlying repo updates done at the same time. We need to check our status first using the git status and as you can see here, it will show the 649 commits ahead of origin/master which is my forked repo on Github: Now it s time to push all the updates! This will commit the changes to the Github forked repo for you and then we are up to date with the upstream source. We will use the git push origin master which pushes the local changes to the master branch of our origin source (in our case discoposse/lattice) and then we can confirm the changes are committed with a git status afterwards: There you go! Now your forked repository is up to date with the upstream source and you can get back to the coding! If you check your Gitub page also, you will see the change there: Hopefully this is helpful, because I have been asked a few times recently about dealing with this issue as people get started with Git. I hope to bring some more quick Git tips as I hear questions come from the community, so feel free to drop me a comment with any question you have! OpenStack by the Numbers: Welcome Kilo! As April 30th arrived, so did the next named release of OpenStack. Kilo is the 11th official release of OpenStack since its inception in Born of the with great hopes and minds at Rackspace and NASA, the widely known open cloud ecosystem continues to gain steam, awareness, and sometimes a little bit of criticism. Whether you re using OpenStack today or investigating it for down the road, this is a good time to take a quick look at what went into the Kilo release.
8 By the People, For the People Not even taking into account the corporate support and customer side of the equation, I always like to see how the developer and operations side of OpenStack fares as each release comes out. One thing that is undeniable is that the velocity continues to increase for OpenStack development, and the stability is also doing the same. The program list (aka project list and probably both because that keeps changing) is widening with the official integration of Ironic, a bare metal provisioning project. Features are growing rapidly also, with a lot of fixes and enhancements that have been wrapped into this release. Juno in Review How does 18,992 code commits sound? That s pretty impressive if you ask me, and what is just as impressive is if you look at how we assessed Juno in the past here. So, with Juno in the bank, how about we look at how Kilo measured up by these numbers. Kilo Kicking it up a Notch As we took a look at the analytics from activity.openstack.org, the numbers were both impressive and telling. 21,125 code commits from 1,593 developers and a total of 1,839 submitters which covers code, documentation, and training. Looking at Juno in comparison shows that we have a continued rise above a linear scale with the Kilo release. This is telling as we can see the velocity of development and the growth of the ecosystem which is increasing at each release. If we look at the picture since the beginning, from 124,499 total code commits, 3,279 total developers, and 3,611 total submitters, it tells us that Kilo produces 16.96% of the total code in just the Kilo release alone! Code counting doesn t tell you success stories. What does show a positive story in these numbers is that they keep moving up and to the right. Increasing both on participation, fixes, features, and total growth. OpenStack Kilo Presentation As the launch press makes its way around, we will see a lot of good detail on features, advancements, and also on challenges. One thing I do appreciate about a lot of the OpenStack community is that they acknowledge that the challenges are real, and are being taken on as much as possible. Here is a quick view of the Kilo release as presented by the OpenStack Foundation: OpenStack Kilo April 2015 from OpenStack Foundation
9 Eric s Favorite Features There are lots of very interesting features and improvements that were packed into the Kilo development cycle. According to the OpenStack Foundation there were 394 to be exact. I don t have an exhaustive list, but I can tell you a couple of things that I am particularly keen on that arrived with Kilo. Keystone-to-Keystone Federation Identity federation was available in previous releases, but was well known to be challenging to work with and very new. The Kilo release of Keystone has seen the federation features listed as stable with much more documentation and working examples of how to federate your OpenStack clouds to one another. As people explored OpenStack without federation, the issue rose that if more than one OpenStack cloud was implemented that the identity environments were separated, and thus difficult to manage. By adding stable Keystone to Keystone federation we have the ability to create a true hybrid OpenStack cloud. This is also important as companies are embracing OpenStack and the potential for two organizations to have to merge during a purchase or partnership was a bit limiter up to this point. Ironic for VirtualBox (experimental) Although this is an experimental feature within the Ironic (bare-metal provisioning) program, the availability of a way to test out Ironic deployment for people is going to be very helpful as we get more folks exploring OpenStack. It s one thing to have a working OpenStack environment, and a whole other thing to have procedures and methods to build, deploy, and grow the infrastructure. Using VirtualBox as the test bed for Ironic will allow more people to test the waters and provide feedback to the development teams. This can only lead to good things. Scale Preparation for Neutron This is a work in progress, but it is top of mind as we head into the Liberty release. Networking within the OpenStack environment has often been shown to have scale challenges when growing in large environments. Many won t hit any of the scale limits that are currently a challenge, but it is important just the same that the teams are working to address this and have done lots of work to build in future improvements as upcoming releases come out. People Yes, people are a feature. This includes a growing community, an eager developer ecosystem, and the most important thing of all which is people using OpenStack. The focus on the operator and what is called the superuser has been big with the last couple of OpenStack Summits, and with good reason. The more people who are using OpenStack in some form, the better the overall ecosystem will do. Looking forward to an equally exciting Liberty release, and I hope to see lots of you in Vancouver at the OpenStack Summit!
10 DiscoPosse Review: ios 6 Programming Cookbook Vandad Nahavandipoor One word review: Complete. The ios 6 Programming Cookbook by Vandad Nahavandipoor from O Reilly Publishing is not just a cookbook, but a full end-to-end recipe guide for every aspect of ios application development for iphone and ipad using Xcode from Apple. The audience is definitely developers. As a system admin with some dabbling in development along the way, I found that the subject matter was deep almost immediately. That being said though, I ve been able to use the guide to develop a couple of sample apps and I plan to continue working on it. If mobile app development is on your radar, then this book is right in your wheelhouse. Vandad provides detailed code samples, clear and concise solutions and a well organized set of recipes to touch on every imaginable component of the ios ecosystem. As a straight read, and as a reference, I would definitely recommend this book. Thanks again O Reilly for another excellent product!
Installing and Using Docker Toolbox for Mac OSX and Windows
Installing and Using Docker Toolbox for Mac OSX and Windows One of the most compelling reasons to run Docker on your local machine is the speed at which you can deploy and build lab environments. As a
More informationUsing GitHub to Share with SparkFun a
Using GitHub to Share with SparkFun a learn.sparkfun.com tutorial Available online at: http://sfe.io/t52 Contents Introduction Gitting Started Forking a Repository Committing, Pushing and Pulling Syncing
More informationOpenStack Havana All-in-One lab on VMware Workstation
OpenStack Havana All-in-One lab on VMware Workstation With all of the popularity of OpenStack in general, and specifically with my other posts on deploying the Rackspace Private Cloud lab on VMware Workstation,
More informationRancher Part 4: Using the Catalog Example with GlusterFS
Rancher Part 4: Using the Catalog Example with GlusterFS As promised, it s time to get to the catalog goodness. Since GlusterFS hasn t gotten enough love from me lately, it s time to bring that into the
More informationGetting the files for the first time...2. Making Changes, Commiting them and Pull Requests:...5. Update your repository from the upstream master...
Table of Contents Getting the files for the first time...2 Making Changes, Commiting them and Pull Requests:...5 Update your repository from the upstream master...8 Making a new branch (for leads, do this
More informationIntroduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum
Introduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum Table of Contents Preparation... 3 Exercise 1: Create a repository. Use the command line.... 4 Create a repository...
More informationGithub/Git Primer. Tyler Hague
Github/Git Primer Tyler Hague Why Use Github? Github keeps all of our code up to date in one place Github tracks changes so we can see what is being worked on Github has issue tracking for keeping up with
More information2 Initialize a git repository on your machine, add a README file, commit and push
BioHPC Git Training Demo Script First, ensure that git is installed on your machine, and you have configured an ssh key. See the main slides for instructions. To follow this demo script open a terminal
More informationIndex. Alias syntax, 31 Author and commit attributes, 334
Index A Alias syntax, 31 Author and commit attributes, 334 B Bare repository, 19 Binary conflict creating conflicting changes, 218 during merging, 219 during rebasing, 221 Branches backup, 140 clone-with-branches
More informationTips on how to set up a GitHub account:
Tips on how to set up a GitHub account: 1. Go to the website https://github.com/, you will see the following page: Figure 1: The GitHub main webpage (before you create an account and sign in) Then choose
More informationgit commit --amend git rebase <base> git reflog git checkout -b Create and check out a new branch named <branch>. Drop the -b
Git Cheat Sheet Git Basics Rewriting Git History git init Create empty Git repo in specified directory. Run with no arguments to initialize the current directory as a git repository. git commit
More informationCPSC 491. Lecture 19 & 20: Source Code Version Control. VCS = Version Control Software SCM = Source Code Management
CPSC 491 Lecture 19 & 20: Source Code Version Control VCS = Version Control Software SCM = Source Code Management Exercise: Source Code (Version) Control 1. Pretend like you don t have a version control
More informationWhat is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)
1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?
More informationGit Workbook. Self-Study Guide to Git. Lorna Mitchell. This book is for sale at
Git Workbook Self-Study Guide to Git Lorna Mitchell This book is for sale at http://leanpub.com/gitworkbook This version was published on 2018-01-15 This is a Leanpub book. Leanpub empowers authors and
More informationSetting up Docker Datacenter on VMware Fusion
Setting up Docker Datacenter on VMware Fusion With the release of Docker Datacenter, it seemed like a good idea to kick the tires on this new system to get a handle on what the experience is like installing,
More informationRevision control. INF5750/ Lecture 2 (Part I)
Revision control INF5750/9750 - Lecture 2 (Part I) Problem area Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control Work on same
More informationChapter 5. Version Control: Git
Chapter 5 Version Control: Git The Replication Crisis continues to heat up discussion across social science. Hence principled researchers want to make their work easy to replicate and reputable journals
More informationCS 390 Software Engineering Lecture 5 More Git
CS 390 Software Engineering Lecture 5 More Git Reference: Scott Chacon and Ben Straub, Pro Git, published by Apress, available at https://git-scm.com/book/en/v2. Outline Finish local repository Remote
More informationImproving Your Life With Git
Improving Your Life With Git Lizzie Lundgren elundgren@seas.harvard.edu Graduate Student Forum 26 April 2018 Scenarios to Avoid My code was deleted from 90-day retention! Crap, I can t remember what I
More informationGit & Github Fundamental by Rajesh Kumar.
Git & Github Fundamental by Rajesh Kumar About me Rajesh Kumar DevOps Architect @RajeshKumarIN www.rajeshkumar.xyz www.scmgalaxy.com 2 What is git Manage your source code versions Who should use Git Anyone
More informationTable of Contents. Concepts
Table of Contents Git Repositories Overview Learn about Git Quickstarts Create repo - Web Create repo - CLI Create repo - Visual Studio Create repo - IntelliJ Create repo - Xcode Create repo - Eclipse
More informationOSA 201: Deep dive into deploying OpenStack with OSA
OSA 201: Deep dive into deploying OpenStack with OSA Walter Bentley Senior Technical Marketing Engineer, RPC Twitter: @djstayflypro LinkedIn: http://goo.gl/r2p21i GitHub: wbentley15 Blog: hitchnyc.com
More informationIntro to Github. Jessica Young
Intro to Github Jessica Young jyoung22@nd.edu GitHub Basics 1. Installing GitHub and Git 2. Connecting Git and GitHub 3. Why use Git? Installing GitHub If you haven t already, create an account on GitHub
More informationKTH Royal Institute of Technology SEMINAR 2-29 March Simone Stefani -
KTH Royal Institute of Technology SEMINAR 2-29 March 2017 Simone Stefani - sstefani@kth.se WHAT IS THIS SEMINAR ABOUT Branching Merging and rebasing Git team workflows Pull requests and forks WHAT IS THIS
More informationgit-flow Documentation
git-flow Documentation Release 1.0 Johan Cwiklinski Jul 14, 2017 Contents 1 Presentation 3 1.1 Conventions............................................... 4 1.2 Pre-requisites...............................................
More informationAbout SJTUG. SJTU *nix User Group SJTU Joyful Techie User Group
About SJTUG SJTU *nix User Group SJTU Joyful Techie User Group Homepage - https://sjtug.org/ SJTUG Mirrors - https://mirrors.sjtug.sjtu.edu.cn/ GitHub - https://github.com/sjtug Git Basic Tutorial Zhou
More informationTutorial 2 GitHub Tutorial
TCSS 360: Software Development Institute of Technology and Quality Assurance Techniques University of Washington Tacoma Winter 2017 http://faculty.washington.edu/wlloyd/courses/tcss360 Tutorial 2 GitHub
More informationRevision Control. An Introduction Using Git 1/15
Revision Control An Introduction Using Git 1/15 Overview 1. What is revision control? 2. 30,000 foot view 3. Software - git and gitk 4. Setting up your own repository on onyx 2/15 What is version control?
More informationGit. SSE2034: System Software Experiment 3, Fall 2018, Jinkyu Jeong
Git Prof. Jinkyu Jeong (Jinkyu@skku.edu) TA -- Minwoo Ahn (minwoo.ahn@csl.skku.edu) TA -- Donghyun Kim (donghyun.kim@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu
More informationRSARTE Git Integration
RSARTE Git Integration Anders Ek IBM INTRODUCTION...3 EGIT BRIEF OVERVIEW...3 GETTING STARTED...6 ECLIPSE PROJECTS AND GIT REPOSITORIES...6 ACCESSING A REMOTE GIT REPOSITORY...7 IMPORTING AN EXISTING REPOSITORY...8
More informationSubmitting your Work using GIT
Submitting your Work using GIT You will be using the git distributed source control system in order to manage and submit your assignments. Why? allows you to take snapshots of your project at safe points
More informationFileWave 10 Webinar Q&A
FileWave 10 Webinar Q&A When will 10 be released? October 14 th, but you can sign up today to get into the beta program. Link: www.filewave.com/beta-program How stable is the beta? Should we use it for
More informationGit, the magical version control
Git, the magical version control Git is an open-source version control system (meaning, it s free!) that allows developers to track changes made on their code files throughout the lifetime of a project.
More informationFrom Commits to Collaboration: A Git Tutorial for Social Scientists
From Commits to Collaboration: A Git Tutorial for Social Scientists Paul Sangrey, University of Pennsylvania December 12, 2017 The Replication Crisis continues to heat up discussion across social science.
More informationUbuntu Openstack Installer, Single Machine Mode
Ubuntu Openstack Installer, Single Machine Mode A Dell and Canonical Technical White Paper Kent Baxley Canonical Field Engineer 2 THIS WHITE PAPER IS FOR INFORMATIONAL PURPOSES ONLY, AND MAY CONTAIN TYPOGRAPHICAL
More informationTangeloHub Documentation
TangeloHub Documentation Release None Kitware, Inc. September 21, 2015 Contents 1 User s Guide 3 1.1 Managing Data.............................................. 3 1.2 Running an Analysis...........................................
More informationGit version control with Eclipse (EGit) Tutorial
Git version control with Eclipse (EGit) Tutorial 출처 : Lars Vogel http://www.vogella.com/tutorials/eclipsegit/article.html Lars Vogel Version 3.6 Copyright 2009, 2010, 2011, 2012, 2013, 2014 Lars Vogel
More informationSoftware Development I
6.148 Software Development I Two things How to write code for web apps. How to collaborate and keep track of your work. A text editor A text editor A text editor Anything that you re used to using Even
More informationGit. CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015
Git CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015 1 Lecture Goals Present a brief introduction to git You will need to know git to work on your presentations this semester 2 Git
More informationIntroduction to Git and Github Repositories
Introduction to Git and Github Repositories Benjamin Audren École Polytechnique Fédérale de Lausanne 29/10/2014 Benjamin Audren (EPFL) CLASS/MP MP runs 29/10/2014 1 / 16 Version Control survey Survey Who
More informationbootmachine Documentation
bootmachine Documentation Release 0.6.0 Thomas Schreiber April 20, 2015 Contents 1 bootmachine 3 1.1 Configuration Management Tools.................................... 3 1.2 Providers.................................................
More informationOverview. 1. Install git and create a Github account 2. What is git? 3. How does git work? 4. What is GitHub? 5. Quick example using git and GitHub
Git 101: Overview 1. Install git and create a Github account 2. What is git? 3. How does git work? 4. What is GitHub? 5. Quick example using git and GitHub Github icon 1 Install git and a create GitHub
More informationVersion Control with Git
Version Control with Git Methods & Tools for Software Engineering (MTSE) Fall 2017 Prof. Arie Gurfinkel based on https://git-scm.com/book What is Version (Revision) Control A system for managing changes
More informationGunnery Documentation
Gunnery Documentation Release 0.1 Paweł Olejniczak August 18, 2014 Contents 1 Contents 3 1.1 Overview................................................. 3 1.2 Installation................................................
More informationGit Workflows. Sylvain Bouveret, Grégory Mounié, Matthieu Moy
s Sylvain Bouveret, Grégory Mounié, Matthieu Moy 2017 [first].[last]@imag.fr http://recherche.noiraudes.net/resources/git/git-workflow-slides.pdf 1 / 16 Goals of the presentation Global history: multiple
More informationGETTING STARTED WITH. Michael Lessard Senior Solutions Architect June 2017
GETTING STARTED WITH Michael Lessard Senior Solutions Architect June 2017 Agenda What is Git? Installation of Git Git basis Github First steps with Git 2 WHAT IS GIT? What is Git? Started in 2005 Created
More informationWorking in Teams CS 520 Theory and Practice of Software Engineering Fall 2018
Working in Teams CS 520 Theory and Practice of Software Engineering Fall 2018 Version Control September 18, 2018 Thursday (September 20) First in-class exercise On using git (today is a prelude with useful
More informationCreating a Patch. Created by Carl Heymann on 2010 Sep 14 1
Created by on 2010 Sep 14 1 1. Starting a Patch To create a patch, and get it through the review process and into a main branch of a project, you can follow the following steps: Clone the project if you
More informationCESSDA Expert Seminar 13 & 14 September 2016 Prague, Czech Republic
CESSDA Expert Seminar 13 & 14 September 2016 Prague, Czech Republic - basics Matthäus Zloch GESIS Outline for this session Git introduction and some theory Git command basics (plus some little advanced)
More informationWorking with GIT. Florido Paganelli Lund University MNXB Florido Paganelli MNXB Working with git 1/47
Working with GIT MNXB01 2017 Florido Paganelli Lund University florido.paganelli@hep.lu.se Florido Paganelli MNXB01-2017 - Working with git 1/47 Required Software Git - a free and open source distributed
More information213/513/613 Linux/Git Bootcamp. Cyrus, Eugene, Minji, Niko
213/513/613 Linux/Git Bootcamp Cyrus, Eugene, Minji, Niko Outline 1. SSH, bash, and navigating Linux 2. Using VIM 3. Setting up VS Code 4. Git SSH 1. On macos/linux: $ ssh ANDREW-ID@shark.ics.cs.cmu.edu
More informationWhat is git? Distributed Version Control System (VCS); Created by Linus Torvalds, to help with Linux development;
What is git? Distributed Version Control System (VCS); Created by Linus Torvalds, to help with Linux development; Why should I use a VCS? Repositories Types of repositories: Private - only you and the
More informationUSING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY
USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation
More informationEugene, Niko, Matt, and Oliver
213/513 Linux/Git Bootcamp Eugene, Niko, Matt, and Oliver outline 1. ssh but also Windows ssh client especially 2. bash commands + navigating Linux 3. VIM and VS Code 4. Git how to ssh 1. on OS X/Linux:
More informationA L A TEX-oriented intro to Git
A L A TEX-oriented intro to Git the tex part is in the interactive demo not in the slides Danielle Amethyst Brake 22 October - 26 November, 2018 ICERM Semester on Nonlinear Algebra Inter-week collaboration
More informationGit tips. Some tips to use Git.
Some tips to use Git. Summary I.... 1. Add remote repository on a project and how to use it... 2. Squash commits... 3. Rewrite a project history... 4. Reset a branch on a precise commit... p. 3 p. 3 p.
More informationGIT. A free and open source distributed version control system. User Guide. January, Department of Computer Science and Engineering
GIT A free and open source distributed version control system User Guide January, 2018 Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Table of Contents What is
More informationGit. Presenter: Haotao (Eric) Lai Contact:
Git Presenter: Haotao (Eric) Lai Contact: haotao.lai@gmail.com 1 Acknowledge images with white background is from the following link: http://marklodato.github.io/visual-git-guide/index-en.html images with
More informationUsing git to download and update BOUT++
ER Meeting 14th Sept 2015 1/28 Using git to download and update BOUT++ Peter Hill ER Meeting 14th Sept 2015 2/28 Outline What is git? Getting git Basic git usage Getting BOUT++ Compiling BOUT++ Running
More informationHow to set up SQL Source Control The short guide for evaluators
GUIDE How to set up SQL Source Control The short guide for evaluators 1 Contents Introduction Team Foundation Server & Subversion setup Git setup Setup without a source control system Making your first
More informationI m an egotistical bastard, and I name all my projects after myself. First Linux, now git. Linus Torvalds, creator of Linux and Git
I m an egotistical bastard, and I name all my projects after myself. First Linux, now git. Linus Torvalds, creator of Linux and Git Git Benedict R. Gaster University of West of England November 23, 2015
More informationCSE 391 Lecture 9. Version control with Git
CSE 391 Lecture 9 Version control with Git slides created by Ruth Anderson & Marty Stepp, images from http://git-scm.com/book/en/ http://www.cs.washington.edu/391/ 1 Problems Working Alone Ever done one
More informationWhat s New in Newton. Emily Hugenbruch, Advisory Software
What s New in Newton Emily Hugenbruch, Advisory Software Engineer, @ekhugen IBM s z/vm Cloud Stack approach 1. z/vm drivers provided to the OpenStack community z/vm drivers are currently open source, part
More informationa handful of Git workflows for the agilist steven harman twitter: stevenharman
a handful of Git workflows for the agilist steven harman twitter: stevenharman http://stevenharman.net stop worrying and start loving The Git. git is awesome - if you re using it, you know. if not, don
More informationHuman-Computer Interaction Design
Human-Computer Interaction Design COGS120/CSE170 - Intro. HCI Instructor: Philip Guo Lab 1 - Version control and HTML (2018-10-03) by Michael Bernstein, Scott Klemmer, Philip Guo, and Sean Kross [Announce
More informationI'm Andy Glover and this is the Java Technical Series of. the developerworks podcasts. My guest is Brian Jakovich. He is the
I'm Andy Glover and this is the Java Technical Series of the developerworks podcasts. My guest is Brian Jakovich. He is the director of Elastic Operations for Stelligent. He and I are going to talk about
More informationPuppet 101 Basic installation for master and agent machines on Ubuntu with VMware Workstation
Puppet 101 Basic installation for master and agent machines on Ubuntu 12.04 with VMware Workstation You don t have to go far to hear the word Puppet these days. Configuration management isn t just a new
More informationThe Old World. Have you ever had to collaborate on a project by
What the Git? The Old World Have you ever had to collaborate on a project by Shuttling a USB drive back and forth Using Dropbox E-mailing your document around Have you ever accidentally deleted someone
More informationL Modeling and Simulating Social Systems with MATLAB
851-0585-04L Modeling and Simulating Social Systems with MATLAB Lecture 3 GIT Connected Karsten Donnay and Stefano Balietti Chair of Sociology, in particular of Modeling and Simulation ETH Zürich 2012-10-08
More informationGit. all meaningful operations can be expressed in terms of the rebase command. -Linus Torvalds, 2015
Git all meaningful operations can be expressed in terms of the rebase command -Linus Torvalds, 2015 a talk by alum Ross Schlaikjer for the GNU/Linux Users Group Sound familiar? add commit diff init clone
More informationLecture 3: Processing Language Data, Git/GitHub. LING 1340/2340: Data Science for Linguists Na-Rae Han
Lecture 3: Processing Language Data, Git/GitHub LING 1340/2340: Data Science for Linguists Na-Rae Han Objectives What do linguistic data look like? Homework 1: What did you process? How does collaborating
More informationEanes ios5 Upgrade Guide
Eanes ios5 Upgrade Guide These instructions are intended for people to follow on their home machine. District machines have deep freeze and older versions of itunes which could complicate the process.
More informationGit: Distributed Version Control
Git: Distributed Version Control Computer Science and Engineering College of Engineering The Ohio State University Lecture 3 Demo Prep: Empty (but initialized) repo Linear development: Create, edit, rename,
More informationGit. Ľubomír Prda. IT4Innovations.
Git Ľubomír Prda IT4Innovations lubomir.prda@vsb.cz support@it4i.cz VCS Version Control System Versioning - creation and management of multiple releases of a product, all of which have the same general
More informationGetting Started with Contributing to OpenStack An Introductory Crash Course on OpenStack Development
Getting Started with Contributing to OpenStack An Introductory Crash Course on OpenStack Development Mike Turek mjturek@us.ibm.com mjturek on freenode Who Am I? Mike Turek Software Engineer at IBM in the
More informationCSCE UVM Hands-on Session-1 Pre-Work
CSCE489-689 UVM Hands-on Session-1 Pre-Work Please complete the following steps before the lecture on Feb-16. These steps will help set-up the environment and tools necessary for the hands-on session.
More informationVersion Control: Gitting Started
ting Started Cai Li October 2014 What is 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. Local Version
More informationUsing Git to Manage Source RTL
Using Git to Manage Source RTL CS250 Tutorial 1 (Version 082311) August 24, 2011 Brian Zimmer How to use this tutorial This class will be using Git for all of the labs and projects. This will allow the
More informationRevision Control and GIT
Revision Control and GIT On UD HPC Community Clusters William Totten Network & Systems Services Why use revision control You can go back in time It makes it easy to try things out which might not work
More informationHuman-Computer Interaction Design
Human-Computer Interaction Design COGS120/CSE170 - Intro. HCI Instructor: Philip Guo, Lab TA: Sean Kross Lab 1 - Version control and HTML (2017-10-06) by Michael Bernstein, Scott Klemmer, Philip Guo, and
More informationThe instructions in this document are applicable to personal computers running the following Operating Systems:
Preliminary Notes The instructions in this document are applicable to personal computers running the following Operating Systems: Microsoft Windows from version 7 up to 10 Apple Mac OS X from versions
More informationprojecto Documentation
projecto Documentation Release 0.0.1 Projecto Team September 08, 2014 Contents 1 Part I: Projecto Overview 3 1.1 Features.................................................. 3 1.2 Project Layout..............................................
More informationAutomatic Creation of a Virtual Network with VBoxManage [1]
Automatic Creation of a Virtual Network with V... 1 Automatic Creation of a Virtual Network with VBoxManage [1] Submitted by Steve [2] on Wed, 18/09/2013-5:46pm I am using VirtualBox to create multiple
More informationGit Tutorial. André Sailer. ILD Technical Meeting April 24, 2017 CERN-EP-LCD. ILD Technical Meeting, Apr 24, 2017 A. Sailer: Git Tutorial 1/36
ILD Technical Meeting, Apr 24, 2017 A. Sailer: Git Tutorial 1/36 Git Tutorial André Sailer CERN-EP-LCD ILD Technical Meeting April 24, 2017 LD Technical Meeting, Apr 24, 2017 A. Sailer: Git Tutorial 2/36
More informationAt a high level, the current OPNFV CI pipeline can be summarized as follows:
Cross Community Continuous Integration (XCI) Empowers Innovation by Increasing Collaboration Between and Upstream Communities With XCI, regularly integrates the latest from each supported branch of select
More informationRaspberry Pi Kernel-o-Matic
Raspberry Pi Kernel-o-Matic Created by Todd Treece Last updated on 2016-09-25 04:20:07 AM UTC Guide Contents Guide Contents Overview Installing Dependencies Starting the VM Build the Kernel Custom PiTFT
More informationHappy Birthday, Ajax4jsf! A Progress Report
Happy Birthday, Ajax4jsf! A Progress Report By Max Katz, Senior Systems Engineer, Exadel Ajax4jsf is turning one soon and what a year it will have been. It was an amazing ride for all of us here at Exadel.
More informationBuilding CircuitPython
Building CircuitPython Created by Dan Halbert Last updated on 2018-05-18 03:47:12 AM UTC Guide Contents Guide Contents Introduction Linux Setup Install a Real or Virtual Linux Machine Native Linux Linux
More informationFAQ Q: Where/in which branch do I create new code/modify existing code? A: Q: How do I commit new changes? A:
FAQ Q: Where/in which branch do I create new code/modify existing code? A: We strongly recommend only modifying the source code within the local master branch: Git Repository View Woped repository Branches
More informationGit Resolve Conflict Using Mine Command Line
Git Resolve Conflict Using Mine Command Line We'll explore what approaches there are to resolve the conflict, and then we'll Please, fix them up in the work tree, and then use 'git add/rm ' as appropriate
More informationAssumptions. GIT Commands. OS Commands
Many of the world s largest dev teams have adopted Git and it s not hard to see why It can handle small and large projects easily It has a tiny footprint It outclasses other version control tools It s
More informationAPI RI. Application Programming Interface Reference Implementation. Policies and Procedures Discussion
API Working Group Meeting, Harris County, TX March 22-23, 2016 Policies and Procedures Discussion Developing a Mission Statement What do we do? How do we do it? Whom do we do it for? What value are we
More informationTopics covered. Introduction to Git Git workflows Git key concepts Hands on session Branching models. Git 2
Git Git 1 Topics covered Introduction to Git Git workflows Git key concepts Hands on session Branching models Git 2 Introduction to Git Git 3 Version control systems The source files of a project changes
More informationVersion Control System - Git. zswu
Version Control System - Git zswu Overview Why VCS? Why Git? Using Git Personally Using Git with Others Etiquette Rules of Using Git Tools & Services Tips 2 Why VCS (1/3) How do you manage your homework?
More informationGit: Distributed Version Control
Git: Distributed Version Control Computer Science and Engineering College of Engineering The Ohio State University Lecture 3 What Does "D" Stand For? Distributed version control Multiple people, distributed
More informationIC Documentation. Release 0.1. IC team
IC Documentation Release 0.1 IC team Jan 22, 2019 Contents 1 How to contribute to IC 3 1.1 Prepare github.............................................. 3 1.2 Prepare your repositories.........................................
More informationGIT VERSION CONTROL TUTORIAL. William Wu 2014 October 7
GIT VERSION CONTROL TUTORIAL William Wu w@qed.ai 2014 October 7 ABOUT ME Scientific Computing Specialist background: math, cs, ee interests: machine learning, DSP, imaging, data viz, cloud work: various
More informationGit Setup Help using GitKraken (CSE 154)
Git Setup Help using GitKraken (CSE 154) Introduction: Git enables keeping track of different versions of files as we keep editing them. To make sure we understand git properly, here are some terms you
More informationGetting Started With Containers
DEVNET 2042 Getting Started With Containers Matt Johnson Developer Evangelist @mattdashj Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session
More informationG E T T I N G S TA R T E D W I T H G I T
G E T T I N G S TA R T E D W I T H G I T A A R O N H O O V E R & B R A D M I N C H J A N U A R Y 2 2, 2 0 1 8 1 Why use a version control system? Much of this document was blatantly cribbed from Allen
More information