Wine HQ

  WineHQ Menu
  WineHQ
  AppDB
  Bugzilla
  Wine Wiki
  Wine Forums
  About
  Introduction
  Features
  Screenshots
  Contributing
  News Blog
  World Wine News
  Press
  License
  Download
  Get Wine Now
  Support
  Getting Help
  FAQ
  Documentation
  HowTo
  Live Support Chat
  Paid Support
  Development
  Developers Guide
  Mailing Lists
  GIT
  Sending Patches
  To Do Lists
  Fun Projects
  Janitorial
  Winelib
  Status
  Resources
  WineConf
  Languages
English English
Español Español
  Search WineHQ

The Wine Git Tree

The Wine Git Tree

Wine uses an Open Source, open process development model. Anyone may get the code, post opinions on what should be done, and contribute patches. You will need to know C and/or perl, and something about Unix and Windows.

Git is a fast directory content manager, originally written for use with large repositories, such as the Linux Kernel source.

You will need Git 1.3.1 or above.

Read the sections below on how to use our Git tree or check the GitWine guide on the Wine Wiki.

  1. Getting a local copy of Wine
  2. Cleaning up your existing tree
  3. Staying Up-To-Date
  4. Source Tree Browsing via the Web
  5. Other modules available from WineHQ
  6. Getting a local copy of Wine with CVS

Getting a local copy of Wine

To check out the entire Wine source tree, do:

git clone git://source.winehq.org/git/wine.git wine


Cleaning up your existing tree

A quick way to clean up your tree after you've been modifying it and want to remove changes you haven't checked in is this:

cd wine git diff-index -p HEAD > total-x.x.x.diff patch -p1 -R < total-x.x.x.diff git reset

Using the current x.x.x tags, you can keep a history of changes that were in your Wine tree.

If you have made commits to the tree, and want to remove them all, you can use the following more dangerous command:

git reset --hard origin

This will wipe out any local changes you have made, so use it with caution.


Staying Up-To-Date

First, make sure to clean your tree as described above, then run the following commands from the top level wine directory:

git fetch git rebase origin


Source Tree Browsing via the Web

The source code of the entire Wine tree is (LXR-based) cross-referenced and available for browsing, including a search engine. This cross-references source is based on the snapshot-releases and is made available at:

Direct access from the web to the complete Git tree is also possible, using gitweb package:


Other modules available from WineHQ

In addition to the main source tree, the WineHQ Git server also exports the following modules:

  • website.git -- source for the WineHQ.org website
  • bugzilla.git -- source for the bugzilla version used on the WineHQ site
  • appdb.git -- source for the application database web site
  • docs.git -- source for the Wine documentation
  • tools.git -- tools used on the WineHQ site

Getting a local copy of Wine with CVS

If you cannot use Git for some reason, the main source tree is also available through CVS.

To login to the CVS server, run in a terminal:

cvs -d :pserver:cvs@cvs.winehq.org:/home/wine login

Use "cvs" as the password (without the quotes).

To check out the Wine source tree run:

cvs -z 3 -d :pserver:cvs@cvs.winehq.org:/home/wine checkout wine