git&github Flashcards
(15 cards)
1
Q
git
A
a system, a distributed version control system
locally installed on a computer
command line tool
version control system
control versions of files
2
Q
github
A
a service
on the web
graphical interface
code hosting platform for hit repos
control versions of files + other stuff
3
Q
git clone
A
copies a repo to the local machine
origin is the remote repo
4
Q
Issues
A
- To track:
– Ideas
– Feedback
– Tasks
– Bugs - Organization:
– Labels
– Milestones
– Assignee
– Traceability
5
Q
Pull requests
A
- Main goals:
- To allow code review and
- To perform automated checks on changes
- before changes are merged in the main branch
6
Q
before changes are merged in the main branch
A
git checkout -b branch
7
Q
GitHub Actions
A
- Main goal:To automate software development tasks and processes
8
Q
Workflow
A
- A workflow is a configurable automated process that will run one or more jobs
- Workflows are defined in a .yml file checked in to your
repository - Workflows are defined in the “.github/workflows” directory in the repository
- A workflow must contain the following basic components:
- One or more events that will trigger the workflow
- One or more jobs, each of which will execute on a runner machine and run a series of one or more steps
- Each step can either run a script defined by the developer or a predefined action
9
Q
Version control systems
A
- Version control systems are software tools that help software teams keep track and manage changes to source code over time.
- Change history recording
- Independent development
- Storage management
10
Q
Repositories
A
- Repository: files/folders that contain the project’s files and each file’s version history.
- Local repository: a repository stored on a developer computer, only the developer has access to it.
- Remote repository: a repository stored on some remote computer, all team members have access to it.
11
Q
Centralized vs. distributed version control systems
A
- Advantages of distributed version control systems:
- Flexibility for local work without network connectivity
- Speed to perform commands on the repository
- Resilience to restore a damaged remote repository
- Disadvantages of distributed version control systems:
- Storage: if the project has a long history, it might take
more disk space in the developers’ computers
- Storage: if the project has a long history, it might take
12
Q
Free Software
A
- Freedom 0: The freedom to run the program as you wish, for any purpose.
- Freedom 1: The freedom to study how the program works, and change it, so it does your computing as you wish. Access to the source code is a precondition for this.
- Freedom 2: The freedom to redistribute copies so you can help others in your community.
- Freedom 3: The freedom to distribute copies of your modified versions to others. By doing this, you can give the whole community a chance to benefit from your
changes. Access to the source code is a precondition for this.
13
Q
Free Software vs. Open Source
A
- They stand for views based on fundamentally different values:
- For the free software movement, free software is an ethical imperative, essential respect for the users’ freedom.
- By contrast, the philosophy of open source considers issues in terms of how to make software “better”, in a practical sense only
14
Q
licences
A
free
- permissive
- copyleft (protective)
proprietary (no copying, no modification)
15
Q
A