Using Git in Pitivi
Git is the most popular distributed revision control system. Git allows you to get a checkout (with full history) of the Pitivi code, as a local git repository, and push your changes to a remote repository of your own, to make them available for others.
In this page, we cover specifics of how we use Git in the Pitivi project. For an introduction to Git, see the official Git tutorial/documentation page and git ready.
Sending changes around
As can be seen in the development workflow,
best is to create an account on the GNOME GitLab instance and fork
Pitivi there to create
your own remote pitivi
repository. When you push branches to this
remote repository, you have the option to create a merge request.
A GitLab merge request is the same things as a GitHub pull request.
This way, the maintainers and other interested parties are notified
and can review the changes.
When to use git pull
With rare exceptions, in Pitivi we rebase contributed commits before pushing them to origin/master, to avoid merge commits. This worked fine and it enforces some discipline, so there is no plan to change it.
When working on a issue, assuming you're following the development
workflow, you should have a specific branch.
To get the latest changes in your branch, normally in Pitivi you should
do something like git fetch
and git rebase origin/master
.
It should be safe to use git pull
on the master branch, if you don't
work on it. Just make sure it's exactly what origin/master is and no
merge commit is created.
Not going insane
It's much easier to understand what's the status of a git branch by
using a graphical tool such as gitk
or
gitg (tailored for GNOME, with a
really nice interface).
Meld can be very useful for reviewing a large
change to be committed. Simply run meld .
in your local repository.
Set up your prompt to show the current branch info, and make sure tab-completion works.
The results of the search are