46 lines
1.1 KiB
ReStructuredText
46 lines
1.1 KiB
ReStructuredText
Working copy
|
|
============
|
|
|
|
Working copy is the folder associated to a git repository. In *gitlib*, you
|
|
can access this object using the *getWorkingCopy* on a *Repository* object:
|
|
|
|
.. code-block:: php
|
|
|
|
$repo = new Repository('/path/to/working-dir');
|
|
$wc = $repo->getWorkingCopy();
|
|
|
|
Checkout a revision
|
|
-------------------
|
|
|
|
You can checkout any revision using *checkout* method. You can also pass a
|
|
second argument, which will be passed as argument with ``-b``:
|
|
|
|
.. code-block:: php
|
|
|
|
// git checkout master
|
|
$wc->checkout('master');
|
|
|
|
// git checkout origin/master -b master
|
|
$wc->checkout('origin/master', 'master');
|
|
|
|
You can also pass a *Reference* or a *Commit*.
|
|
|
|
Staged modifications
|
|
--------------------
|
|
|
|
You can get a diff of modifications pending in staging area. To get the ``Diff`` object,
|
|
call method ``getDiffStaged()``:
|
|
|
|
.. code-block:: php
|
|
|
|
$diff = $wc->getDiffStaged();
|
|
|
|
Pending modifications
|
|
---------------------
|
|
|
|
You can get pending modifications on tracked files by calling method ``getDiffPending()``:
|
|
|
|
.. code-block:: php
|
|
|
|
$diff = $wc->getDiffPending();
|