Slide deck with detailed step breakdown that explains how git works, together with simple examples that you can try out yourself. Slides originated from http://teach.github.com/articles/course-slides/
Author: https://twitter.com/matthewmccull
Two days git training with labs
First day covers git basis and essential commands
Second day covers git additional command with a big lab using a git workflow
Git is a distributed revision control system that is widely used in the software development industry. The presentation was used in a lecture delivered in BITS-Pilani, India. The lecture served as a basic crash course on Git.
First, it sets off with a guide to install and configure git on various platforms.
Then, the basic working concepts of Git are explained.
This is followed by a detailed step-by-step guided demonstration of a sample workflow in Git.
Afterwards, Some auxillary commands that are frequently used are discussed briefly.
Finally, basic concepts of branching and merging are detailed.
The presentation ends with a few possible merge conflicts that occur in Git.
Two days git training with labs
First day covers git basis and essential commands
Second day covers git additional command with a big lab using a git workflow
Git is a distributed revision control system that is widely used in the software development industry. The presentation was used in a lecture delivered in BITS-Pilani, India. The lecture served as a basic crash course on Git.
First, it sets off with a guide to install and configure git on various platforms.
Then, the basic working concepts of Git are explained.
This is followed by a detailed step-by-step guided demonstration of a sample workflow in Git.
Afterwards, Some auxillary commands that are frequently used are discussed briefly.
Finally, basic concepts of branching and merging are detailed.
The presentation ends with a few possible merge conflicts that occur in Git.
Introduction to Git & GitHub.
Agenda:
- What’s a Version Control System?
- What the heck is Git?
- Some Git commands
- What’s about GitHub?
- Git in Action!
Through this tutorial, you can learn Git & GitHub fundamentals very easily. I have explained both theory and practical. I hope you will enjoy it. Happy Git.!!
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Simplilearn
This presentation on Git will help you understand version control system, distributed version control system, what is Git, Git vs GitHub, Git architecture, fork & clone, collaborators, branch, merge & rebase, various Git commands and at the end you will also see a demo on Git. Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for software development, but it can be used to keep track of changes in any files. This course enables you to learn and solve versioning problems with your files and codes. Now let us get started and understand what is Git along with a demo.
Below topics are explained in this Git presentation:
1. Version control system
2. Distributed version control system
3. What is Git?
4. Git vs GitHub
5. Git architecture
6. Fork and clone
7. Collaborators
8. Branch, merge and rebase
9. Commands in Git
10. Git demo
Why learn DevOps?
Simplilearn’s DevOps training course is designed to help you become a DevOps practitioner and apply the latest in DevOps methodology to automate your software development lifecycle right out of the class. You will master configuration management; continuous integration deployment, delivery and monitoring using DevOps tools such as Git, Docker, Jenkins, Puppet and Nagios in a practical, hands-on and interactive approach. The DevOps training course focuses heavily on the use of Docker containers, a technology that is revolutionizing the way apps are deployed in the cloud today and is a critical skillset to master in the cloud age.
After completing the DevOps training course you will achieve hands-on expertise in various aspects of the DevOps delivery model. The practical learning outcomes of this Devops training course are:
An understanding of DevOps and the modern DevOps toolsets
The ability to automate all aspects of a modern code delivery and deployment pipeline using:
1. Source code management tools
2. Build tools
3. Test automation tools
4. Containerization through Docker
5. Configuration management tools
6. Monitoring tools
Who should take this course?
DevOps career opportunities are thriving worldwide. DevOps was featured as one of the 11 best jobs in America for 2017, according to CBS News, and data from Payscale.com shows that DevOps Managers earn as much as $122,234 per year, with DevOps engineers making as much as $151,461. DevOps jobs are the third-highest tech role ranked by employer demand on Indeed.com but have the second-highest talent deficit.
1. This DevOps training course will be of benefit the following professional roles:
2. Software Developers
3. Technical Project Managers
4. Architects
5. Operations Support
6. Deployment engineers
7. IT managers
8. Development managers
Learn more at: https://www.simplilearn.com/
A Git tutorial for rookies that covers most aspects of basic Git usage for a medium sized project.
This was originally a semestral lecture given at the TU Wien for the course "Software Engineering and Project Management"
Do you know the basics of Git but wonder what all the hype is about? Do you want the ultimate control over your Git history? This tutorial will walk you through the basics of committing changes before diving into the more advanced and "dangerous" Git commands.
Git is an open source, distributed version control system used to track many different projects. You can use it to manage anything from a personal notes directory to a multi-programmer project.
This tutorial provides a short walk through of basic git commands and the Git philosophy to project management. Then we’ll dive into an exploration of the more advanced and “dangerous” Git commands. Watch as we rewrite our repository history, track bugs down to a specific commit, and untangle commits into an LKML-worthy patchset.
Introduction to Git & GitHub.
Agenda:
- What’s a Version Control System?
- What the heck is Git?
- Some Git commands
- What’s about GitHub?
- Git in Action!
Through this tutorial, you can learn Git & GitHub fundamentals very easily. I have explained both theory and practical. I hope you will enjoy it. Happy Git.!!
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Simplilearn
This presentation on Git will help you understand version control system, distributed version control system, what is Git, Git vs GitHub, Git architecture, fork & clone, collaborators, branch, merge & rebase, various Git commands and at the end you will also see a demo on Git. Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for software development, but it can be used to keep track of changes in any files. This course enables you to learn and solve versioning problems with your files and codes. Now let us get started and understand what is Git along with a demo.
Below topics are explained in this Git presentation:
1. Version control system
2. Distributed version control system
3. What is Git?
4. Git vs GitHub
5. Git architecture
6. Fork and clone
7. Collaborators
8. Branch, merge and rebase
9. Commands in Git
10. Git demo
Why learn DevOps?
Simplilearn’s DevOps training course is designed to help you become a DevOps practitioner and apply the latest in DevOps methodology to automate your software development lifecycle right out of the class. You will master configuration management; continuous integration deployment, delivery and monitoring using DevOps tools such as Git, Docker, Jenkins, Puppet and Nagios in a practical, hands-on and interactive approach. The DevOps training course focuses heavily on the use of Docker containers, a technology that is revolutionizing the way apps are deployed in the cloud today and is a critical skillset to master in the cloud age.
After completing the DevOps training course you will achieve hands-on expertise in various aspects of the DevOps delivery model. The practical learning outcomes of this Devops training course are:
An understanding of DevOps and the modern DevOps toolsets
The ability to automate all aspects of a modern code delivery and deployment pipeline using:
1. Source code management tools
2. Build tools
3. Test automation tools
4. Containerization through Docker
5. Configuration management tools
6. Monitoring tools
Who should take this course?
DevOps career opportunities are thriving worldwide. DevOps was featured as one of the 11 best jobs in America for 2017, according to CBS News, and data from Payscale.com shows that DevOps Managers earn as much as $122,234 per year, with DevOps engineers making as much as $151,461. DevOps jobs are the third-highest tech role ranked by employer demand on Indeed.com but have the second-highest talent deficit.
1. This DevOps training course will be of benefit the following professional roles:
2. Software Developers
3. Technical Project Managers
4. Architects
5. Operations Support
6. Deployment engineers
7. IT managers
8. Development managers
Learn more at: https://www.simplilearn.com/
A Git tutorial for rookies that covers most aspects of basic Git usage for a medium sized project.
This was originally a semestral lecture given at the TU Wien for the course "Software Engineering and Project Management"
Do you know the basics of Git but wonder what all the hype is about? Do you want the ultimate control over your Git history? This tutorial will walk you through the basics of committing changes before diving into the more advanced and "dangerous" Git commands.
Git is an open source, distributed version control system used to track many different projects. You can use it to manage anything from a personal notes directory to a multi-programmer project.
This tutorial provides a short walk through of basic git commands and the Git philosophy to project management. Then we’ll dive into an exploration of the more advanced and “dangerous” Git commands. Watch as we rewrite our repository history, track bugs down to a specific commit, and untangle commits into an LKML-worthy patchset.
A practical step-by-step guide to Git, taking you through each phase of a project and explaining the use of Git at each step of the development process. Expect lots of how-to, but also some how-not-to, to avoid going down the wrong path.
GitHub is a web-based hosting service for version control using git. It is mostly used for computer code. It offers all of the distributed version control and source code management (SCM) functionality of Git as well as adding its own features. It provides access control and several collaboration features such as bug tracking, feature requests, task management, and wikis for every project
CraftCamp for Students - Introduction to gitcraftworkz
CraftCamp for Students - Introduction to git
Git is a distributed revision control system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows. Git was initially designed and developed by Linus Torvalds for Linux kernel development in 2005, and has since become the most widely adopted version control system for software development.
Git is an important part of daily programming (especially if you're working with a team) and is widely used in the software industry. Since there are many various commands you can use, mastering Git takes time. But some commands are used more frequently (some daily). So in this post, I will share and explain the most used Git commands that every developer should know. Note: To understand this PDF, you need to know the basics and advances of Git. https://www.9series.com/
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
Similar to Github - Git Training Slides: Foundations (20)
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S7.1 Summary & Conclusion Day 2Lee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S16 Summary & Conclusion Day 4Lee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S15.1 Summary & Conclusion Day 3Lee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S15 Comparison of Satipatthana ContentsLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slides compare the contents of Satipatthana in 7 different suttas.
Satipatthana Sutta Workshop - S14 Pali Terms for 3 times & SatiLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S13 Noble TruthsLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slide covers 4 Noble Truths, the Noble Eightfold Path and the interlink between the concepts of the Noble Eightfold Path.
Satipatthana Sutta Workshop - S12.1 Samatha & VipassanaLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slides explore the meaning of samatha, vipassana and compared these 2 concepts. These slides also cover the concept of sankhara.
Satipatthana Sutta Workshop - S11 samadhi in kayanupassana & kayagatasati1.3.3Lee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slides compare the Kayanupassana with Kayagatasati Sutta and propose that the 4 satipatthanas and kayagatasati are 2 different formulations with different emphasis.
Satipatthana Sutta Workshop - S10.1 Summary & Conclusion Day 3Lee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S8 HindrancesLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slides cover the Hindrances, namely:
Sensual Desire
Ill-will
Sloth & Torpor
Restlessness & Worry
Doubts
Satipatthana Sutta Workshop - S6.1 Body Parts and the Four ElementsLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slides cover the four elements.
Satipatthana Sutta Workshop - S4.2 Summary & Conclusion Day 1Lee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
Satipatthana Sutta Workshop - S4.1 Calming Bodily FormationLee Hanxue
This set of slides is from the Satipatthana Workshop conducted by Venerable Aggacitta at Sasanarakkha Buddhist Sanctuary between July 26-29, 2012.
Permission is given to redistribute without any modifications, for non-commercial purposes only.
These slides cover the concept of bodily formation.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
4. Ma hew who?
‣Open source contributor
‣Build tool book co-author
‣Continuous integration book co-author
‣5 year Git evangelist
‣VP of Training at GitHub
17. GIT - the stupid content tracker
"git" can mean anything, depending on your mood.
* random three-letter combination that is pronounceable, and not actually used by any
common UNIX command. The fact that it is a mispronunciation of "get" may or may not be
relevant.
* stupid. contemptible and despicable. simple. Take your pick from the dictionary of
slang.
* "global information tracker": you're in a good mood, and it actually works for you.
Angels sing, and a light suddenly fills the room.
* "goddamn idiotic truckload of sh*t": when it breaks
Git is a fast, scalable, distributed revision control system with an unusually rich
command set that provides both high-level operations and full access to internals.
Git is an Open Source project covered by the GNU General Public License. It was originally
written by Linus Torvalds with help of a group of hackers around the net. It is currently
maintained by Junio C Hamano.
“
”
23. I did end up using CVS for 7 years at a commercial
company and I hate it with a passion...
The slogan of Subversion for a while was
"CVS done right"... and if you start with that
kind of slogan, there's nowhere you can go.
There is no way to do CVS right.
-Linus Torvalds
“
”
60. Configuring Git
#Configure a setting in a .git repository
git config __________
git config --local __________
#Configure a setting in the user's home dir
git config --global __________
#Configure a setting in the Git install dir
# e.g. /usr/local/Cellar/git/1.7.x/etc/gitconfig
git config --system __________
96. Line Endings
#Force files to be LF in the repo,
# even on Mac/Linux
git config --global core.autocrlf input
#Force Windows to convert to platform
# on checkout and to LF on commit
git config --global core.autocrlf true
97. Line Endings
#Force files to be LF during `add`
git config --global core.autocrlf input
#Force Windows to convert to CRLF
# on checkout and to LF on `add`
git config --global core.autocrlf true
99. Line Endings
#Never complain about line ending conversion
git config --global core.safecrlf false
#Warn, but allow line ending conversion to proceed
#(the default)
git config --global core.safecrlf warn
#Do not allow line ending conversion to proceed
git config --global core.safecrlf true
108. Configuring SSH
‣id_rsa is the private half of the key
‣Keep this uncompromisingly secret
‣id_rsa.pub is the public half of the key
‣Give this away freely
109. Configuring SSH
#GitHub sanity test
ssh -T git@github.com
> Hi matthewmccullough! You've successfully
authenticated, but GitHub does not provide
shell access.
110. Configuring SSH
#GitHub sanity test with verbose SSH
ssh -v git@github.com
>OpenSSH_5.2p1, OpenSSL 0.9.8l 5 Nov 2009
debug1: Reading configuration data /Users/mccm06/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: Connection established.
debug1: identity file /Users/mccm06/.ssh/identity type -1
debug1: identity file /Users/mccm06/.ssh/id_rsa type 1
debug1: identity file /Users/mccm06/.ssh/id_dsa type 2
...
debug1: Host 'github.com' is known and matches the RSA host key.
debug1: Found key in /Users/mccm06/.ssh/known_hosts:3
debug1: ssh_rsa_verify: signature correct
...
debug1: Trying private key: /Users/mccm06/.ssh/identity
debug1: Offering public key: /Users/mccm06/.ssh/id_rsa
debug1: Remote: Forced command: gerve matthewmccullough
131. Commit Message Editor
#for TextMate on Mac
git config --global core.editor "mate -w"
#for Notepad2 on Windows
git config --global core.editor "notepad2.exe"
#for emacs on Linux
git config --global core.editor "emacs"
O
ption
3
195. The Git File Workflow
# Remove with OS or tool,
# not integrated with Git
$ rm <FILENAME>
# Staging area says it is
# deleted but not staged
$ git status
# Put deletion into staging
$ git rm <FILENAME>
196. The Git File Workflow
# Remove with OS or tool
# then follow up with git add
$ rm <FILENAMES>
$ git add -u .
212. Similarity Index
# Move with OS or tool,
$ mv <FILENAME> <NEWFILENAME>
# Follow up by staging everything
$ git add -A .
# Renames showing
git status
# No renames showing?
git log --stat
221. “The --find-copies-harder flag makes the
command inspect unmodified files as
candidates for the source of copy. This
is a very expensive operation for large
projects, so use it with caution. Giving
more than one -C option has the same
effect.
”
230. Offline
‣Local repository is a full copy of the remote
‣Clone fetches all branches and tags
‣Almost all activities happen offline (local disk)
‣Offline activities are push-ed to remotes
236. Offline
Checkout a branch
Add changes
Commit changes
Branch changes
Log history
Grep history
Stash pending changes
Tag a commit
Remove a file
Merge a branch
Rewrite history
351. Hashes
tree
tree: 7e8b1 web
blob: 9ab16 index.html
a10b3
tree
blob: 8d162 logo.jpg
blob: 51d22 draw.js
7e8b1commit
tree: a10b3
parent: nil
author: Fird
committer: Matthew
message:
Major refactoring
of the web content.
c67db
blob<html>
<body></body>
</html>
9ab16
blob
//Some more javascript
var renderSize
51d22
blob
7D 8D B3 7F BD 12 9F E9
7B 78 9D 3F 5C A6 72 CB
8d162
352. Hashes
v1 v2 v3
commit
tree: 9a87b
parent: nil
author: Fird
committer: Matthew
message:
Major refactoring
of the Javascript rendering
engine.
c67db
commit
tree: b22c1
parent: c67db
author: Tim
committer: Fird
message:
Minor update to HTML
9bd21
commit
tree: b22c1
parent: 9bd21
author: Johnny
committer: Joe
message:
New language transations
1c2d7
532. git-svn
‣ SVN Externals
‣ No direct support
‣ Represented as separate repos
‣ Git points at a stable snapshot
‣ SVN Externals follow changes on a branch