In one of our weekly training, we’ve talked about Git. Here is a quick overview of the main concepts, basic commands and branching strategy, how to work with Git, how to contribute to an OSS project, …
The document discusses features and changes in ASP.NET vNext, the future version of ASP.NET. It describes how vNext uses project.json for dependencies instead of references, allows editing code without recompiling, and merges MVC, Web API and Web Pages into a single framework. It also discusses tools for building, running and deploying vNext applications in Visual Studio 2015 and how the runtime will be more modular and cross-platform compared to previous versions of ASP.NET.
Redis is an open source advanced key-value store, created by antirez. Here is a quick overview of this awesome NoSql DB.
Like a swiss knife, Redis will help you by many ways : LRU cache, high scores, UID generator, queues, social feeds, autocomplete …
I have evidence that using git and GitHub for documentation and community doc techniques can give us 300 doc changes in a month. I’ve bet my career on these methods and I want to share with you.
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
Presentation about open source tools to set up continuous integration and continuous deployment. Covers Git, Gitlab, Chef, Vagrant, Jenkins, Gatling, Dashing, TYPO3 Surf and some other tools. Shows some best practices for testing with Behat and Functional Testing.
Codecoon is the next generation hosting portal from the punkt.de GmbH. In this talk we explain how we implemented the portal and its components using TYPO3 Flow, Opscode Chef, Vagrant and Sinatra. We give a detailed insight in why we used which technologies and which developer itches we want to tackle.
Make It Cooler: Using Decentralized Version Controlindiver
A commonly used version control system in the ColdFusion community is Subversion -- a centralized system that relies on being connected to a central server. The next generation version control systems are “decentralized”, in that version control tasks do not rely on a central server.
Decentralized version control systems are more efficient and offer a more practical way of software development.
In this session, Indy takes you through the considerations in moving from Subversion to Git, a decentralized version control system. You also get to understand the pros and cons of each and hear of the practical experience of migrating projects to decentralized version control.
Version control is often used in conjunction with a testing framework and continuous integration. To complete the picture, Indy walks you through how to integrate Git with a testing framework, MXUnit, and a continuous integration server, Hudson.
The document provides an overview of continuous integration and continuous delivery practices. It discusses continuous integration, which involves integrating code changes frequently and verifying them through automated builds and tests. Continuous delivery is described as building software in a way that allows release to production at any time, while continuous deployment means any change is automatically deployed to production. Jenkins, an open source automation server, is introduced as a tool that enables continuous integration and deployment through jobs, credentials, scheduling, build steps, and post-build actions. Pipelines in Jenkins are discussed as dividing deployment into stages to provide quick feedback. The Blue Ocean plugin is highlighted as providing a simplified user interface for Jenkins pipelines.
A hands-on workshop that covers 18 best practices in 4 categories or in other words ✅️ Dos & Don'ts.
After a general introduction, we will have a look at the essential practices (aka must do), then move to the image practices, then we will go through the security practices, and finally, some general practices.
Please note, this workshop assumes that you have a basic knowledge of Docker.
Hands-on repo:
https://github.com/aabouzaid/docker-best-practices-workshop
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
In diesem Talk beschreibe ich die Continuous Integartion Pipeline von punkt.de und deren Entstehen. Es wird motiviert, warum es sich lohnt, eine solche Pipeline zu implementieren und welche Tools wir dafür verwendet haben. Neben der Beschreibung von Git, Jenkins, Chef, Vagrant, Behat und Surf geht es auch um Integration der einzelnen Tools in eine Deployment Kette.
Sascha Möllering discusses how his company moved from manual server setup and deployment to automated deployments using infrastructure as code and continuous delivery. They now deploy whenever needed using tools like Chef and JBoss to configure servers. Previously they faced challenges like manual processes, difficult rollbacks, and biweekly deployment windows. Now deployments are automated, safer, and can happen continuously.
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013 Tikal Knowledge
This document discusses using Jenkins for continuous integration (CI) and continuous delivery (CD) of .NET open source projects. It covers how to achieve CI using Jenkins by automating builds, testing on each commit, and more. It also discusses using NuGet for dependency management and Sonar for code quality analysis. Finally, it provides examples of using Jenkins to deploy builds to platforms like AWS Elastic Beanstalk for CD after builds pass testing.
Vagrant, Chef and TYPO3 - A Love AffairMichael Lihs
Vagrant allows setting up portable development environments for TYPO3 projects quickly using virtual machines. Chef is a configuration management tool that can automate the provisioning of these Vagrant boxes. Using Vagrant and Chef together provides benefits like sharing projects easily and having development environments match production.
Automate your Development Environment with Vagrant & ChefMichael Lihs
Vagrant and Chef can be used to automate development environments. Vagrant allows setting up projects in minutes and sharing environments with others. It uses virtualization software like VirtualBox along with configuration tools like Chef. Chef manages configurations through cookbooks containing recipes, resources, and templates. Vagrant boxes provide base images that can be provisioned using Chef recipes to install software and configure services. This allows consistently provisioning environments for development, testing, and production.
Continuous Delivery with Jenkins and Wildfly (2014)Tracy Kennedy
A presentation on a continuous delivery pipeline that leverages Jenkins Enterprise, Jenkins Operations Center, Nexus, HAProxy, and Wildfly. Pipeline components run in Docker containers along with SkyDock/SkyDNS for service discovery and NSEnter for command-line access to containers.
This document compares classic app development and deployment to containerized apps. It discusses using containers and Docker to package apps and their dependencies. It shows how containers can be defined, built, and orchestrated. Container deployment to different environments like integration, staging, and production is described. Usage scenarios like continuous integration servers are presented. Challenges with the new container-based approach are also acknowledged.
http://www.meetup.com/BruJUG/events/228994900/
During this session, you will presented a solution to the problem of scalability of continuous delivery in Jenkins, when your organisation has to deal with thousands of jobs, by introducing a self-service approach based on the "pipeline as code" principles.
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...Puppet
Here are the slides from Matt Stone's PuppetConf 2016 presentation called A Tale of Two Hierarchies: Group Policy & Puppet . Watch the videos at https://www.youtube.com/playlist?list=PLV86BgbREluVjwwt-9UL8u2Uy8xnzpIqa
This document provides an overview of Docker and ASP.NET Core. It discusses key Docker concepts like images, containers, Dockerfile and Docker Compose. It demonstrates how to install Docker and use common Docker commands. It also covers ASP.NET Core topics such as middleware, Razor Pages, Tag Helpers and dependency injection. The document includes an agenda with Docker and ASP.NET Core demos.
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...Matthew Groves
If you are thinking of trying out a NoSQL document database, there are many good options available to Microsoft-oriented developers. In this session, we’ll compare some of the more popular databases, including: CosmosDb, Couchbase, MongoDb, CouchDb, and RavenDb. We’ll look at the strengths and weaknesses of each system. Querying, scaling, usability, speed, deployment, support and flexibility will all be covered. This session will include a discussion about when NoSQL is right for your project and give you an idea of which technology to pursue for your use case.
This presentation gives a short introduction to Vagrant and Chef for automation of configuration management. You will get a first overview of the stack of technology used to set up your own Vagrant Boxes and how they help the to build reliable development environments right on your own local laptop. We will scratch topics like DevOps and Continuous Integration and how they link to Configuration Management and Chef and Vagrant.
If you like these slides, make sure to check out http://de.slideshare.net/Sebobo/continuous-delivery-with-open-source-tools as well!
Jenkins 101: Continuos Integration with JenkinsAll Things Open
This document provides an overview of getting started with Jenkins, including how to install Jenkins, configure Jenkins jobs, set up Jenkins nodes, implement security, use source control for jobs, write Groovy scripts, and leverage plugins. Key topics covered include the three main parts of a Jenkins job (pre-build, build, post-build), designing jobs first before configuring them, parameterizing jobs, using the Jenkins workspace, creating "dumb nodes", implementing naming conventions, locking down access with the Matrix Authorization Strategy plugin, pulling job configurations from source control, and generating reports and links using Groovy scripts.
This document provides an agenda and overview for a class on using Git, GitHub, and VSCode. It introduces command line basics, files and directories, terminal commands, text editors, GitHub, Git basics, and a homework assignment to create a GitHub repository and JavaScript program. Key topics covered include the Git workflow, essential Git commands, using GitHub Pages to host websites, and an introduction to JavaScript programming.
Continuous Deployment with Kubernetes, Docker and GitLab CIalexanderkiel
This document discusses continuous deployment of Clojure services to Kubernetes using Docker and GitLab CI. It provides an overview of Docker, Kubernetes, deploying a sample Clojure service, and configuring GitLab CI for continuous integration and deployment. The sample Clojure service is built as a Docker image, tested using GitLab CI, and deployed to Kubernetes clusters for testing and production using configuration files and GitLab CI pipelines.
Package Management on Windows with ChocolateyPuppet
This document discusses using Puppet and Chocolatey for package management on Windows systems. It provides an overview of how Puppet works, why Chocolatey is useful as a package manager for Windows, how to use the Chocolatey Puppet provider to manage packages, how to create Chocolatey packages, host your own Chocolatey package server, and resources for learning more about Puppet and Windows management. It also includes an agenda for the content covered and a question and answer section.
Introduction to GitHub Actions - How to easily automate and integrate with Gi...All Things Open
Presented by: Brent Laster
Presented at the All Things Open 2021
Raleigh, NC, USA
Raleigh Convention Center
Abstract: In this talk, open-source author, trainer and DevOps director Brent Laster will provide a solid introduction to GitHub Actions. You’ll learn about the core parts and pieces that make up an action, as well as the types of functionality and features they provide. You’ll also see how to combine them in simple workflows to accomplish basic tasks as well as how they can fit into a CI/CD environment.
JUC Europe 2015: Plugin Development with Gradle and GroovyCloudBees
By Daniel Spilker, CoreMedia
Learn how to use the Gradle JPI plugin to enable a 100% Groovy plugin development environment. We will delve into Groovy as the primary programming language, Spock for writing tests and Gradle as the build system.
This document discusses how Docker simplifies continuous integration and continuous delivery (CI/CD) workflows. It provides an overview of classical CI/CD pipelines and their requirements, introduces containers and their advantages over virtual machines, and shows how Docker can be used to containerize applications, build servers, publish container images, deploy applications, and implement blue-green deployments and canary releases for safer releases.
Get Rid of Visual SourceSafe Codemash 2010Joe Kuemerle
Are you still using Visual Source Safe? Have you heard about all the other version control systems that are out there but have not had the time or patience to evaluate them? Come and learn about the ins and outs, ups and downs of Team Foundation System, Subversion, and Git : what they offer and how to integrate them into your current environment.
This document provides an introduction to using Git version control. It begins with an overview of version control systems and the fundamental Git concepts like repositories, working copies, commits, and branches. The document then covers how to set up and configure Git, the basic Git commands to save changes like add, commit, and push. It discusses branching and merging workflows. Additional topics include inspecting repositories, undoing changes, rewriting history, and advanced tips like stashing, filtering logs, and resolving conflicts. Homework assignments are provided to practice common Git workflows and commands.
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
In diesem Talk beschreibe ich die Continuous Integartion Pipeline von punkt.de und deren Entstehen. Es wird motiviert, warum es sich lohnt, eine solche Pipeline zu implementieren und welche Tools wir dafür verwendet haben. Neben der Beschreibung von Git, Jenkins, Chef, Vagrant, Behat und Surf geht es auch um Integration der einzelnen Tools in eine Deployment Kette.
Sascha Möllering discusses how his company moved from manual server setup and deployment to automated deployments using infrastructure as code and continuous delivery. They now deploy whenever needed using tools like Chef and JBoss to configure servers. Previously they faced challenges like manual processes, difficult rollbacks, and biweekly deployment windows. Now deployments are automated, safer, and can happen continuously.
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013 Tikal Knowledge
This document discusses using Jenkins for continuous integration (CI) and continuous delivery (CD) of .NET open source projects. It covers how to achieve CI using Jenkins by automating builds, testing on each commit, and more. It also discusses using NuGet for dependency management and Sonar for code quality analysis. Finally, it provides examples of using Jenkins to deploy builds to platforms like AWS Elastic Beanstalk for CD after builds pass testing.
Vagrant, Chef and TYPO3 - A Love AffairMichael Lihs
Vagrant allows setting up portable development environments for TYPO3 projects quickly using virtual machines. Chef is a configuration management tool that can automate the provisioning of these Vagrant boxes. Using Vagrant and Chef together provides benefits like sharing projects easily and having development environments match production.
Automate your Development Environment with Vagrant & ChefMichael Lihs
Vagrant and Chef can be used to automate development environments. Vagrant allows setting up projects in minutes and sharing environments with others. It uses virtualization software like VirtualBox along with configuration tools like Chef. Chef manages configurations through cookbooks containing recipes, resources, and templates. Vagrant boxes provide base images that can be provisioned using Chef recipes to install software and configure services. This allows consistently provisioning environments for development, testing, and production.
Continuous Delivery with Jenkins and Wildfly (2014)Tracy Kennedy
A presentation on a continuous delivery pipeline that leverages Jenkins Enterprise, Jenkins Operations Center, Nexus, HAProxy, and Wildfly. Pipeline components run in Docker containers along with SkyDock/SkyDNS for service discovery and NSEnter for command-line access to containers.
This document compares classic app development and deployment to containerized apps. It discusses using containers and Docker to package apps and their dependencies. It shows how containers can be defined, built, and orchestrated. Container deployment to different environments like integration, staging, and production is described. Usage scenarios like continuous integration servers are presented. Challenges with the new container-based approach are also acknowledged.
http://www.meetup.com/BruJUG/events/228994900/
During this session, you will presented a solution to the problem of scalability of continuous delivery in Jenkins, when your organisation has to deal with thousands of jobs, by introducing a self-service approach based on the "pipeline as code" principles.
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...Puppet
Here are the slides from Matt Stone's PuppetConf 2016 presentation called A Tale of Two Hierarchies: Group Policy & Puppet . Watch the videos at https://www.youtube.com/playlist?list=PLV86BgbREluVjwwt-9UL8u2Uy8xnzpIqa
This document provides an overview of Docker and ASP.NET Core. It discusses key Docker concepts like images, containers, Dockerfile and Docker Compose. It demonstrates how to install Docker and use common Docker commands. It also covers ASP.NET Core topics such as middleware, Razor Pages, Tag Helpers and dependency injection. The document includes an agenda with Docker and ASP.NET Core demos.
5 Popular Choices for NoSQL on a Microsoft Platform - All Things Open - Octob...Matthew Groves
If you are thinking of trying out a NoSQL document database, there are many good options available to Microsoft-oriented developers. In this session, we’ll compare some of the more popular databases, including: CosmosDb, Couchbase, MongoDb, CouchDb, and RavenDb. We’ll look at the strengths and weaknesses of each system. Querying, scaling, usability, speed, deployment, support and flexibility will all be covered. This session will include a discussion about when NoSQL is right for your project and give you an idea of which technology to pursue for your use case.
This presentation gives a short introduction to Vagrant and Chef for automation of configuration management. You will get a first overview of the stack of technology used to set up your own Vagrant Boxes and how they help the to build reliable development environments right on your own local laptop. We will scratch topics like DevOps and Continuous Integration and how they link to Configuration Management and Chef and Vagrant.
If you like these slides, make sure to check out http://de.slideshare.net/Sebobo/continuous-delivery-with-open-source-tools as well!
Jenkins 101: Continuos Integration with JenkinsAll Things Open
This document provides an overview of getting started with Jenkins, including how to install Jenkins, configure Jenkins jobs, set up Jenkins nodes, implement security, use source control for jobs, write Groovy scripts, and leverage plugins. Key topics covered include the three main parts of a Jenkins job (pre-build, build, post-build), designing jobs first before configuring them, parameterizing jobs, using the Jenkins workspace, creating "dumb nodes", implementing naming conventions, locking down access with the Matrix Authorization Strategy plugin, pulling job configurations from source control, and generating reports and links using Groovy scripts.
This document provides an agenda and overview for a class on using Git, GitHub, and VSCode. It introduces command line basics, files and directories, terminal commands, text editors, GitHub, Git basics, and a homework assignment to create a GitHub repository and JavaScript program. Key topics covered include the Git workflow, essential Git commands, using GitHub Pages to host websites, and an introduction to JavaScript programming.
Continuous Deployment with Kubernetes, Docker and GitLab CIalexanderkiel
This document discusses continuous deployment of Clojure services to Kubernetes using Docker and GitLab CI. It provides an overview of Docker, Kubernetes, deploying a sample Clojure service, and configuring GitLab CI for continuous integration and deployment. The sample Clojure service is built as a Docker image, tested using GitLab CI, and deployed to Kubernetes clusters for testing and production using configuration files and GitLab CI pipelines.
Package Management on Windows with ChocolateyPuppet
This document discusses using Puppet and Chocolatey for package management on Windows systems. It provides an overview of how Puppet works, why Chocolatey is useful as a package manager for Windows, how to use the Chocolatey Puppet provider to manage packages, how to create Chocolatey packages, host your own Chocolatey package server, and resources for learning more about Puppet and Windows management. It also includes an agenda for the content covered and a question and answer section.
Introduction to GitHub Actions - How to easily automate and integrate with Gi...All Things Open
Presented by: Brent Laster
Presented at the All Things Open 2021
Raleigh, NC, USA
Raleigh Convention Center
Abstract: In this talk, open-source author, trainer and DevOps director Brent Laster will provide a solid introduction to GitHub Actions. You’ll learn about the core parts and pieces that make up an action, as well as the types of functionality and features they provide. You’ll also see how to combine them in simple workflows to accomplish basic tasks as well as how they can fit into a CI/CD environment.
JUC Europe 2015: Plugin Development with Gradle and GroovyCloudBees
By Daniel Spilker, CoreMedia
Learn how to use the Gradle JPI plugin to enable a 100% Groovy plugin development environment. We will delve into Groovy as the primary programming language, Spock for writing tests and Gradle as the build system.
This document discusses how Docker simplifies continuous integration and continuous delivery (CI/CD) workflows. It provides an overview of classical CI/CD pipelines and their requirements, introduces containers and their advantages over virtual machines, and shows how Docker can be used to containerize applications, build servers, publish container images, deploy applications, and implement blue-green deployments and canary releases for safer releases.
Get Rid of Visual SourceSafe Codemash 2010Joe Kuemerle
Are you still using Visual Source Safe? Have you heard about all the other version control systems that are out there but have not had the time or patience to evaluate them? Come and learn about the ins and outs, ups and downs of Team Foundation System, Subversion, and Git : what they offer and how to integrate them into your current environment.
This document provides an introduction to using Git version control. It begins with an overview of version control systems and the fundamental Git concepts like repositories, working copies, commits, and branches. The document then covers how to set up and configure Git, the basic Git commands to save changes like add, commit, and push. It discusses branching and merging workflows. Additional topics include inspecting repositories, undoing changes, rewriting history, and advanced tips like stashing, filtering logs, and resolving conflicts. Homework assignments are provided to practice common Git workflows and commands.
Git can be used like Subversion for version control of code repositories and collaboration. It has advantages like working offline, easier branching workflows, and more open collaboration models. Git encourages practices like fixing bugs in branches before merging into mainline code. Distributed version control allows multiple remote repositories to be used.
Git Flow and Coding Style discusses Git merge vs Git rebase and JavaScript coding style. It explains how Git merge creates a new commit when merging branches while Git rebase replays commits from one branch onto another branch without creating additional merge commits. It recommends rebasing the master branch and testing before creating a pull request. It also discusses the Airbnb JavaScript style guide as a good reference for code examples and styles including ES6 standards. Yoda conditions are mentioned as a style to avoid assignment errors in conditional statements. Writing unit tests is suggested to prevent coding errors.
The everyday developer's guide to version control with GitE Carter
Git is a distributed version control system that allows developers to track changes in source code. It provides tools to commit changes locally, branch code for parallel development, and collaborate remotely by pushing and pulling changes from a shared repository. Common Git commands include init to create a repository, add and commit to save changes locally, checkout to switch branches, pull to retrieve remote changes, and push to upload local changes. Git helps developers work efficiently by enabling features like branching, undoing mistakes, and viewing the revision history.
Deep dark-side of git: How git works internallySeongJae Park
Describe how git works internally using small and perfect plumbing commands.
The slide have been used at GDG DevFest 2014 and SOSCON 2014.
The slide can be updated later. And, the latest version would always be provided from this page always.
I was inspired to use GIT much more reliably after reading about Git Flow. I got a little lost until I read "Why Aren't You Using Git Flow?". I decided to do a presentation for OrlandoPHP to try and share my enthusiasm with them.
Thank you to Vincent Driessen and Jeff Kreeftmeijer for being my inspiration.
This document introduces Git Flow, a Git branching model that provides high-level repository operations. It outlines the main branches - master for production, develop for development, and supporting branches like feature, release, and hotfix. Git Flow is a collection of Git extensions that help initialize and manage branches through commands like git flow feature and git flow release. The model forms an easy to understand mental model for teams to share in their branching and releasing processes.
Git is a version control system that allows developers to work collaboratively by tracking changes to files. The document discusses various Git commands for cloning repositories, making changes, committing changes, branching, merging, resolving conflicts, and pushing/pulling changes. Key commands covered include git clone, git add, git commit, git branch, git checkout, git merge, git push, and git pull. Branches allow independent lines of development that can later be merged together, while commands like git add, commit, push and pull manage changes across local and remote repositories.
Web development, from git flow to github flowCaesar Chi
software development, website development, we move develope way from git flow to github flow.
what is github flow's advantage and who we change it, check it out.
Effective Development With Eclipse Mylyn, Git, Gerrit and HudsonChris Aniszczyk
This document discusses effective development using Eclipse, Mylyn, Git, Gerrit and Hudson (Jenkins). It introduces Mylyn and how it integrates tasks within Eclipse to reduce context switching. It also discusses how Mylyn integrates with Hudson for continuous integration and builds. It covers why distributed version control systems like Git are becoming popular and the benefits they provide for collaboration and workflow. It describes Eclipse's experience moving to Git and challenges they faced.
This document introduces Git Flow, a branching model for Git that supports parallel development and release management of projects. It recommends using separate branches for features, releases, hotfixes and support. The key branches are develop, which always holds the complete history and is used for integration, and master, which holds production-ready code. Feature branches are used for new development and merged into develop when ready. Release branches are used to prepare releases and merged into both develop and master. Hotfix branches address issues in master and merged into both. Visual diagrams and step-by-step examples are provided to demonstrate how to set up and use Git Flow for parallel development and releases.
The document discusses Gitflow, a Git workflow that provides high-level repository operations for Vincent Driessen's branching model. It introduces Gitflow, outlines its history and benefits including parallel development and release staging. The document then explains how Gitflow works and the commands to install, initialize and use it for features, releases and hotfixes.
Git is a free and open source distributed version control system designed by Linus Torvalds in 2005 to handle everything from small to large projects with speed and efficiency. It allows for tracking changes to code, collaborative work, and reverting to previous versions of code. GitHub is a site for hosting Git repositories online that adds features like documentation, bug tracking, and code review via pull requests. Common Git commands include git init to initialize a repository, git add to stage changes, git commit to save changes to the project history, and git push to upload changes to a remote repository.
Git is a free and open-source distributed version control system created by Linus Torvalds in 2005. It allows tracking changes to files and coordinating work among teams of developers. GitHub is a web-based hosting service for Git repositories that offers both free and paid plans. Git uses a decentralized model with local repositories that can be synced and shared, supporting thousands of parallel branches. It provides commands for cloning repositories, tracking changes, committing updates, and merging branches.
Git is a distributed version control system that allows for both local and remote collaboration on code. It provides advantages like speed, simplicity, integrity, and support for parallel development through features like branching. Common Git commands include git init to start a new repository, git add to stage files, git commit to save changes, git push to upload local work to a remote repository, and git pull to download remote changes. GitHub is a popular hosting service for Git repositories that provides a graphical interface and social features.
This document provides an overview of version control and the Git version control system. It explains that Git can help collaborators work in parallel and merge changes automatically. It also describes how to install Git and some common Git commands like git init, git add, git commit, git push, git remote, git log, git stash, and git merge. It discusses features of Git like repositories, branches, commits, and resolving merge conflicts. It encourages exploring GitHub as a platform for code collaboration using Git for version control.
a way to manage files and directories.
track changes over time.
recall previous versions.
source control is subset of VCS.
sharing on multiple computers
Types of vcs:
Local VCS
Centralized VCS
Distributed VCS
Features of git
commands in git
Git is a free and open source distributed version control system that allows tracking changes to projects, enabling reversion to previous versions and collaboration. It runs locally, keeping track of file histories, and remote hosts like GitHub can be used to host projects and histories, enabling collaboration through pushing and pulling changes. Git provides functionality, performance, security and flexibility needed for both individual and team development.
Git is a version control system that allows developers to track changes to files over time. It is distributed, meaning developers have their own local copy of the code repository. This allows working offline and merging changes. Common Git commands include git add to stage changes, git commit to save changes locally, and git push to upload changes to the remote repository. Tagging specific versions with git tag allows easy deployment of code.
This document provides an overview of version control with Git. It explains what version control and Git are, how to install and configure Git, how to perform basic tasks like initializing a repository and making commits, and how to collaborate using features like branching and pushing/pulling from remote repositories. Key points covered include allowing the tracking of changes, maintaining file history, and enabling multiple people to work on the same project simultaneously without conflicts.
- Git is a free and open source distributed version control system that allows users to manage and track changes to source code. GitHub is a hosting service that offers additional features for Git repositories like wikis and issue tracking. Git is the tool and GitHub is the hosting service.
- Unlike centralized version control systems like CVS and SVN, Git allows for distributed collaboration where any clone of a Git repository is a full backup that can be used to restore the repository if the main server goes down.
- The presentation covers how to set up Git on Windows, Mac and Linux, how to initialize and clone repositories, and provides an overview of basic Git commands.
This document provides an introduction and overview of Git. It begins with a brief history of Git's origins with Linux source code management. It then covers key Git concepts like its distributed version control model, advantages like speed and resilience, and some basic commands. The document demonstrates setting up a sample Git repository and making commits. It also discusses branching, tagging, undoing changes, cleaning up repositories, and using remote repositories.
Introduction to GitHub, Open Source and Tech ArticlePRIYATHAMDARISI
The document provides an introduction to Git and GitHub. It begins with an agenda that outlines topics like commands, a demo, open source, and conclusion. It then discusses what Git is, the need to learn version control, and demonstrates some basic Git commands. It also covers topics like open source opportunities and general discussions.
ePOM - Fundamentals of Research Software Development - Code Version ControlGiuseppe Masetti
E-learning Python for Ocean Mapping (ePOM) project.
Complementary slides to the "Code Version Control" module (part of the Fundamentals of Research Software Development training).
More details at https://www.hydroffice.org/epom
Git provides several advantages over SVN including faster operations, cheaper branching and merging, and a distributed model. It allows for multiple workflows including creating branches for experimental work or bug fixes. Commits, trees, blobs, and tags provide integrity for file versions and changes. Pull requests enable collaboration across remote repositories. Migrating to Git from SVN and using tools like SubGit can help transition repositories.
this a good start in git usage and it is perfect for beginners after study it. you will be able to start using GITand go to advance usage this from my 7 years of experience git is the power of DevOps
Git is an open source distributed version control system designed for speed and efficiency. It allows developers to work simultaneously and independently of an internet connection by keeping a local copy of the code repository. Changes are committed locally and then pushed to a remote repository to share work. Git uses branches to isolate work, enabling features to be developed separately from the main code without disrupting the primary version. This makes it possible for hotfixes to be applied without affecting ongoing work.
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.
The slide contains Git workflow, command line instructions to work with Git, examples of project management over GitHub.
August OpenNTF Webinar - Git and GitHub ExplainedHoward Greenberg
When OpenNTF began in 2001, source control was little known and sharing of code via the cloud was limited. Fast forward 20 years and GitHub is the dominant sharing site and git the standard technology for source control.
In this webinar Paul Withers and Jesse Gallagher will:
Demystify git
Explain Branching
Show what makes a high quality repository
How to take advantage of GitHub’s broad functionality
Get that coveted "Verified" badge
Go from source control zero to GitHub hero!
The Reactive Extensions (Rx) is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operators. Here is an overview of Rx with examples at the end.
Why another test framework in dotnet ? In this presentation, I will try to convince you to switch to xUnit. Main concepts & extensibility points are covered here. Happy testing !
A really quick introduction to Microsoft Azure Storage and all of its services. It's one of the core components of Azure and it's really important to understand it if you want to "move to the cloud".
This document provides an overview of Akka.NET, an actor model framework for .NET. It discusses how Akka.NET uses message passing between immutable messages to build distributed and concurrent applications. It also covers key Akka.NET concepts like actors, actor systems, supervision strategies, and plugins for clustering, persistence and remoting.
'Scenario Driven Design' allow programmers to make more usable APIs and avoid performance issues. REST principles are often misunderstood and programmers expose their raw data model without any logic. Think about your scenarios first !
The document provides tips for effectively managing email in Outlook. It recommends using only 3 folders - Inbox, Reference, and Personal. Categories should be set up for emails like @Read and @Waiting to help with organization. Search folders allow filtering emails in different categories. The four D's model - Do, Delegate, Defer, Delete - is presented as a decision-making framework for handling emails. Calendar, tasks, and rules are also discussed as tools for staying organized. Questions can be directed to the presenter, Clive, by email.
Performance doesn’t have the same definition between system administrators, developpers and business teams. What is Performance ? High CPU usage, not scalable web site, low business transaction rate per sec, slow response time, … This presentation is about maths, code performance, load testing, web performance, best practices, … Working on performance optimizaton is a very broad topic. It’s important to really understand main concepts and to have a clean and strong methodology because it could be a very time consumming activity. Happy reading !
Because we are not only shipping code and we are no longer Microsoft developers but .NET developers, it's time to open your mind and to see what is offering the OSS world.
Docker is an amazing tool.
Docker did popularize container and brought a way to manage it.
Ok, seems to be cool, but why do developers care?
- Static application environment: we know exactly what we are running
- Repeatable, runnable artifact: we can deploy everywhere, anytime
- Loosely coupled: we can manage, isolate, and compose at environment level easily
Please have a look to this Betclic presentation and remember that .NET CLR are coming in GNU/linux world!
Flyway is a light database migration tools:
- Migrate the database from a list of sql migration scripts (schemas and data).
- Each script is prefixed by a version number that determine the version of the database.
- The execution trace of the scripts is saved in a "schemas_version" table.
- Automatically find which scripts to execute to upgrate a database to a specific version.
NDepend is a static analysis tool for .NET managed code. This tool supports a large number of code metrics, allows for visualization of dependencies using directed graphs and dependency matrix. The tools also performs code base snapshots comparison, and validation of architectural and quality rules.
This document summarizes Jurgen Appelo's book "Management 3.0" and provides examples of management workout exercises. It discusses that Management 1.0 is bad management, while Management 2.0 tries to do the right thing but fails due to a lack of understanding of social systems. Management 3.0 does the right thing through good understanding. Seventeen management workout themes are then outlined that support engaging people, improving systems, and delighting clients.
A mixed introduction of Lean and Agile concepts targeted at business audience, presenting 3 key lean concepts (MVP, short feedback loop, cost of delay).
Since the introduction of C#, async/await concepts are still misunderstood by many developers.
Async programming tries to solve three problems (Offloading, Concurrency, Scalability) in a mean abstraction.
This presentation is a good starting point to asynchronous programming in .net. There are many links and references, so do not hesitate to go deeper.
This document discusses mobile UX trends from October 2014. It covers interfaces, use of space and content, colors, pictures and effects, gestures, and animations. Specific trends mentioned include simplified interfaces focusing on key actions, use of layered and circular interface elements, infographics, blurred backgrounds, large images, swipe gestures, and animations that guide users without overusing motion effects. Examples are provided for many of these trends from apps like FIFA, Airbnb, Vine, and Google Glass. Guidelines are also referenced from Apple, Android, Windows, and other sources.
The Model View ViewModel (MVVM) is an architectural pattern originated by Microsoft as a specialization of the Presentation Model (Martin Fowler). Similar to MVC, MVVM is suitable for client applications (Xaml-based, Xamarin, SPA, ...) because it facilitates a clear separation between the UI and the Business Logic. Examples with WPF, MvvmCross, AngularJs. It also contains solutions for common use cases.
Recommendations are everywhere : music, movies, books, social medias, e-commerce web sites… The Web is leaving the era of search and entering one of discovery. This quick introduction will help you to understand this vast topic and why you should use it.
This document provides an overview of AngularJS best practices, covering topics such as file organization, naming conventions, modules, controllers, services, directives, and scope. It discusses organizing code by feature and type, using namespacing prefixes, understanding modules and their organization, defining controller, service and directive roles, communicating between components, avoiding FOUC, and thinking declaratively. Specific practices are covered for minification, services creation, directives usage, scope interfaces, and controllers versus link functions.
This document introduces Roslyn, an open source .NET compiler platform that provides code analysis APIs. It allows building code analysis tools like those used in Visual Studio. The document outlines Roslyn's SDK version, refactoring tools, and options for customization. It also lists some language features enabled by Roslyn like auto-property initializers, primary constructors, and exception filters. Links are provided to learn more about Roslyn on its CodePlex site and blogs.
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul
Artificial intelligence is changing how businesses operate. Companies are using AI agents to automate tasks, reduce time spent on repetitive work, and focus more on high-value activities. Noah Loul, an AI strategist and entrepreneur, has helped dozens of companies streamline their operations using smart automation. He believes AI agents aren't just tools—they're workers that take on repeatable tasks so your human team can focus on what matters. If you want to reduce time waste and increase output, AI agents are the next move.
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfSoftware Company
Explore the benefits and features of advanced logistics management software for businesses in Riyadh. This guide delves into the latest technologies, from real-time tracking and route optimization to warehouse management and inventory control, helping businesses streamline their logistics operations and reduce costs. Learn how implementing the right software solution can enhance efficiency, improve customer satisfaction, and provide a competitive edge in the growing logistics sector of Riyadh.
Book industry standards are evolving rapidly. In the first part of this session, we’ll share an overview of key developments from 2024 and the early months of 2025. Then, BookNet’s resident standards expert, Tom Richardson, and CEO, Lauren Stewart, have a forward-looking conversation about what’s next.
Link to recording, presentation slides, and accompanying resource: https://bnctechforum.ca/sessions/standardsgoals-for-2025-standards-certification-roundup/
Presented by BookNet Canada on May 6, 2025 with support from the Department of Canadian Heritage.
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxshyamraj55
We’re bringing the TDX energy to our community with 2 power-packed sessions:
🛠️ Workshop: MuleSoft for Agentforce
Explore the new version of our hands-on workshop featuring the latest Topic Center and API Catalog updates.
📄 Talk: Power Up Document Processing
Dive into smart automation with MuleSoft IDP, NLP, and Einstein AI for intelligent document workflows.
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
From predictive maintenance to robotic automation, AI is driving the future of manufacturing. But without high-quality annotated data, even the smartest models fall short.
Discover how data annotation services are powering accuracy, safety, and efficiency in AI-driven manufacturing systems.
Precision in data labeling = Precision on the production floor.
Semantic Cultivators : The Critical Future Role to Enable AIartmondano
By 2026, AI agents will consume 10x more enterprise data than humans, but with none of the contextual understanding that prevents catastrophic misinterpretations.
Artificial Intelligence is providing benefits in many areas of work within the heritage sector, from image analysis, to ideas generation, and new research tools. However, it is more critical than ever for people, with analogue intelligence, to ensure the integrity and ethical use of AI. Including real people can improve the use of AI by identifying potential biases, cross-checking results, refining workflows, and providing contextual relevance to AI-driven results.
News about the impact of AI often paints a rosy picture. In practice, there are many potential pitfalls. This presentation discusses these issues and looks at the role of analogue intelligence and analogue interfaces in providing the best results to our audiences. How do we deal with factually incorrect results? How do we get content generated that better reflects the diversity of our communities? What roles are there for physical, in-person experiences in the digital world?
This is the keynote of the Into the Box conference, highlighting the release of the BoxLang JVM language, its key enhancements, and its vision for the future.
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Aqusag Technologies
In late April 2025, a significant portion of Europe, particularly Spain, Portugal, and parts of southern France, experienced widespread, rolling power outages that continue to affect millions of residents, businesses, and infrastructure systems.
Quantum Computing Quick Research Guide by Arthur MorganArthur Morgan
This is a Quick Research Guide (QRG).
QRGs include the following:
- A brief, high-level overview of the QRG topic.
- A milestone timeline for the QRG topic.
- Links to various free online resource materials to provide a deeper dive into the QRG topic.
- Conclusion and a recommendation for at least two books available in the SJPL system on the QRG topic.
QRGs planned for the series:
- Artificial Intelligence QRG
- Quantum Computing QRG
- Big Data Analytics QRG
- Spacecraft Guidance, Navigation & Control QRG (coming 2026)
- UK Home Computing & The Birth of ARM QRG (coming 2027)
Any questions or comments?
- Please contact Arthur Morgan at [email protected].
100% human made.
Spark is a powerhouse for large datasets, but when it comes to smaller data workloads, its overhead can sometimes slow things down. What if you could achieve high performance and efficiency without the need for Spark?
At S&P Global Commodity Insights, having a complete view of global energy and commodities markets enables customers to make data-driven decisions with confidence and create long-term, sustainable value. 🌍
Explore delta-rs + CDC and how these open-source innovations power lightweight, high-performance data applications beyond Spark! 🚀
Procurement Insights Cost To Value Guide.pptxJon Hansen
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement — not a competitor — to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
Generative Artificial Intelligence (GenAI) in BusinessDr. Tathagat Varma
My talk for the Indian School of Business (ISB) Emerging Leaders Program Cohort 9. In this talk, I discussed key issues around adoption of GenAI in business - benefits, opportunities and limitations. I also discussed how my research on Theory of Cognitive Chasms helps address some of these issues
2. Agenda
• Back to basis
• What is that GIT/git/Git thing ?
• Git Concepts
• Demos
• Working with Git
– GitHub
– Git + TFS
– Git Tools for on Visual Studio
• Why Git ?
• Questions
“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”
3. What’s a version control system ?
“An application that allows you to record changes to
your codebase in a structured and controlled fashion”
• Makes it way easier to undo errors / roll back to earlier versions of code
• Makes it way easier to share a codebase between developers without
creating conflicts
• Makes it way easier to deploy changes from development to staging or
production environments
4. What is that GIT/git/Git thing?
• Distributed Version Control System (DVCS)
• Open source, free (GNU GPL V2)
• Originally developed by Linus Torvalds for the development
of the Linux Kernel in 2005
• Used by a lot of public/private projects
• Focus on speed and efficiency
• Quite a unique design and therefore sometimes a bit scary
and difficult to understand
5. Git Concepts
Distributed vs. Centralized
Centralized version control systems are based on
the idea that there is a single central copy of your
project somewhere (probably on a server), and
programmers will “commit” their changes to this
central copy.
Distributed Version Control systems do not
necessarily rely on a central server to store all the
versions of a project’s files. Instead, every developer
“clones” a copy of a repository and has
the full history of the project on their own hard
drive. This copy (or “clone”) has all of the metadata
of the original.
6. Git Concepts
Data Storage
Most VCSs tend to store data as
changes to a base version of each
file.
But Git stores data as snapshots of
the project over time. Git thinks of
its data more like a set of snapshots
of a mini filesystem
7. Git Concepts
Nearly Every Operation Is Local
(Browse History, Commit, Branching, …).
No need to be online. Very efficient and
fast
Git Has Integrity
Everything is check-summed (SHA-1), it’s
impossible to change the contents of any file
or directory without Git knowing about it
Git Generally Only Adds Data.
Objects (blob, tree, commit, tag, ..) are
immutable but references (branche, remote,
…) always changes.
Your files can reside in 3 states
Modified means that you have changed
the file but have not committed it to your
database yet.
Staged means that you have marked a
modified file in its current version to go
into your next commit snapshot
Committed means that the data is safely
stored in your local database.
8. Basic Git Actions
Clone
A clone is a copy of a repository that lives on your computer instead of on a website's server
somewhere. With your clone you can edit the files in your preferred editor and use Git to keep
track of your changes without having to be online. It is connected to the remote version so that
changes can be synced between the two.
Commit
When committing in Git, you save your code to your local repository, which then is versioned.
Push
When you push your code in Git, it means that you send your changes to the repository on the
server ; after a push, your changes will also be available for other consumers of the central
repository.
Fetch
When a fetch in Git is performed, you get an overview of changes on the central repository, you
can see a list of changes made to the code and decide if you want to get the latest version.
Pull
When a pull is performed, you get the latest version of the server’s repository, with all other
changes of other team members, a merge is automatically performed, although as far as Git can
handle the differences.
9. Git Demo
try it at https://try.github.io/
// init a Git repository
$ git init
// start tracking changes made to all txt files => add them to the
staging area
$ git add '*.js'
// Store our staged changes (current version)
$ git commit -m 'Add all the js files'
// add a remote remote repository (named origin)
$ git remote add origin https://github.com/toto/mysuperproject.git
// push local changes (commits) to the remote repo(branch master)
$ git push -u origin master
// pull down any new changes made by other people
$ git pull origin master
10. Git Concepts
Branching, Killer-feature
• Branching is very cheap
• Branching operations (creation,
deletion, merge) are always local
• You can have multiple local
branches that can be entirely
independent of each other
• Git encourages a workflow that
branches and merges often, even
multiple times in a day
be sure to be on master branch …
// Switched to a new branch "fixes“
$ git checkout –b hotfix
// fix code
// commit staged changes (the fix)
$ git commit -m ‘Fixed hard coded
password'
// return to master
$ git checkout master
// merge local hoxfix branch to master
$ git merge hotfix
// delete local hoxfix branch
$ git branch -d hotfix
// push merged fixed …
13. Git Concepts
Git Hooks
• Hooks are executables scripts that executed before or after important
events
– commit, push, merge, checkout, receive…. (client/server)
• Built-in feature - no need to download anything, run locally.
• Only limited by developer's imagination. Some example :
– Deploy a web site
– Check commit message
– We want to run test suite to run automatically every time we change something
– We want to make sure that our test coverage is high enough
• …
(GitHub doesn’t support fully support hooks, but provide WebHooks and
Services)
14. Working with Git
Git and/or TFS ?
* Source Repos : Team Foundation Version Control or Git
15. Git for TFS users
Git Actions TFS Command
Clone Create Workspace and Get Latest
Checkout Switch workspace / branch
Commit CheckIn / Shelve
Status Pending Changes
Push CheckIn
Pull Get Latest Version
Sync CheckIn and Get Latest Version
16. Working with Git
GitHub, Social Coding
• Basically a Git repository hosting service…
but it Provides a web-based graphical
interface, desktop app for Mac, Linux,
Windows
• Adds many of its own features : issues,
milestones, labels, wiki, API, team
planning, graphs, …
• Unlimited number of public repositories
& collaborators
• For private projects, you have to pay
• You can clone any public repository,
follow projects and developers, post
comments, …
10 Million Repositories (end of 2013)
Most Starred, May 2014
1 – twbs/bootstrap
2 – jquery/jquery
3 – joyent/node
4 – mbostock/d3.js
5 - angular/angular.js
17. Working with Git
Git Shell/Bash
Explorer extensions allow
you to work direclty in any
folder..
Command line is the
standard way to use git.
Even if there are GUI tools,
you will have to use it at
least once !
18. Working with Git
GitHub for Windows
Easiest way to use GitHub
on Windows.
https://windows.github.com/
19. Working with Git
Git and Visual Studio
• Visual Studio 2013 includes Git tools by default
– Previously it requires an extension
Work with Visual Studio on OSS projects !
20. How to contribute to an OSS Project ?
Fork & Pull workflow
Pull requests let you tell others about changes you've pushed
to a GitHub repository. Once a pull request is sent, interested
parties can review the set of changes, discuss potential
modifications, and even push follow-up commits if necessary
Pull requests = Commit +
Comments + (issue ?)
Remember to Follow project guidelines !
21. Why Git ?
• Decentralized Allow developers to work offline, look in history, commit
some changes and create branchs
• It’s extremely fast as nearly everything is local
• Local Branching and merging is cheap
• Perfectly suited for Open Source projects and use by many leaders
• Tool extremely flexible, can support a wide, wide variety of developer
workflows
• Huge community
• Because of GitHub