GNOME-specific FAQ about Git

See also the Git/General/FAQ and Attic/Git/GnomeRelated/FAQ.

What is this "blah.doap"?

DOAP files are a standard way to describe free software projects. Every repository should have a reponame.doap file in the repository's toplevel directory.

For example, if your project is called gnome-foo, create a gnome-foo.doap file in its toplevel directory. You can steal this template:

<?xml version="1.0" encoding="UTF-8"?>
<Project xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
         xmlns:foaf="http://xmlns.com/foaf/0.1/"
         xmlns:gnome="http://api.gnome.org/doap-extensions#"
         xmlns="http://usefulinc.com/ns/doap#">

  <name>repository-name</name>
  <shortdesc xml:lang="en">My awesome project</shortdesc>
  <description xml:lang="en">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Nulla facilisi etiam dignissim diam
quis enim lobortis scelerisque. Nisl nunc mi ipsum faucibus. Nunc eget lorem
dolor sed viverra ipsum nunc aliquet.

Aliquam malesuada bibendum arcu vitae elementum. Elit at imperdiet dui accumsan
sit amet nulla facilisi. Sed elementum tempus egestas sed sed risus pretium
quam.
  </description>

  <homepage rdf:resource="https://wiki.gnome.org/Apps/CHANGE" />
  <developer-forum rdf:resource="https://discourse.gnome.org/tag/YOUR_PRODUCT" />
  <support-forum rdf:resource="https://discourse.gnome.org/tag/YOUR_PRODUCT" />
  <download-page rdf:resource="https://download.gnome.org/sources/YOUR_PRODUCT/" />
  <bug-database rdf:resource="https://gitlab.gnome.org/GNOME/YOUR_PRODUCT/issues/" />
  <category rdf:resource="http://api.gnome.org/doap-extensions#deprecated" />

  <programming-language>Rust</programming-language>
  <programming-language>C</programming-language>

  <maintainer>
    <foaf:Person>
      <foaf:name>Rupert the Monkey</foaf:name>
      <foaf:mbox rdf:resource="mailto:YOUR_EMAIL@gnome.org" />
      <gnome:userid>rupert</gnome:userid>
    </foaf:Person>
  </maintainer>

  <maintainer>
    <foaf:Person>
      <foaf:name>Ruperts Brother</foaf:name>
      <foaf:mbox rdf:resource="mailto:AN_EMAIL@example.net" />
      <gnome:userid>rbrother</gnome:userid>
    </foaf:Person>
  </maintainer>
</Project>

The fragment portion of the category field's rdf:resource can be one of admin, bindings, deprecated, desktop, development, infrastructure, platform, or productivity. If your project does not belong in one of these categories, leave the category element out, and your repository will appear under the "Other" heading in cgit.

You can see the DOAP project for more information, or original announcement about using DOAP for GNOME.

  • Does this mean we can drop the MAINTAINER files? -- SvenHerzberg

  • I think we should change the <mailing-list> to point to Discourse, ideally with the tag if it exists -- SĂ©bastienWilmet

  • Is the <category> still relevant with GitLab and gnome-build-meta? -- SĂ©bastienWilmet

How do I determine who pushed something?

There is the commits-list. It can also be useful to determine who removed a branch.

Or use a link like https://gitlab.gnome.org/GNOME/MODULE/commits/, e.g. https://gitlab.gnome.org/GNOME/gnome-terminal/commits/master for gnome-terminal module.

Git/FAQ (last edited 2024-03-12 16:24:19 by AndreKlapper)