tikiwiki/packages/tiki-pkg-tikimanager/gitonomy/gitlib/doc/workingcopy.md
2023-11-20 20:52:04 +00:00

48 lines
1021 B
Markdown
Executable File

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:
```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`:
```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()`:
```php
$diff = $wc->getDiffStaged();
```
Pending modifications
---------------------
You can get pending modifications on tracked files by calling method
`getDiffPending()`:
```php
$diff = $wc->getDiffPending();
```