Пример #1
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Tag($dialoger);
     $tag = $picker->pickOne('Pick one tag to <b>checkout</b>:');
     $dialoger->runGit('checkout ' . $tag);
     $dialoger->dialogInfo('HEAD is now on tag <b>' . $tag . '</b>');
 }
Пример #2
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Stash($dialoger);
     $stash = $picker->pickOne('Pick one stash to <b>apply</b>:');
     $dialoger->dialogConfirm('Are you sure that you wish to <b>apply</b> this stash?\\n\\n' . $stash);
     $dialoger->runGit('stash apply "' . $stash . '"');
 }
Пример #3
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $remotesPicker = new \DialoGit\Picker\Remote($dialoger);
     $remote = $remotesPicker->pickOne('Pick one remote repository from to <b>pull</b>:');
     $branchesPicker = new \DialoGit\Picker\Branch($dialoger);
     $branch = $branchesPicker->pickOne('Pick one branch to <b>pull</b>:');
     $dialoger->runGitOnNewShell('pull ' . $remote . ' ' . $branch);
 }
Пример #4
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Branch($dialoger);
     $currentBranch = $picker->getCurrent();
     $branch = $picker->pickOneBut('HEAD is on <b>' . $currentBranch . '</b>\\n\\nPick one branch to <b>checkout</b>:', $currentBranch);
     $dialoger->runGit('checkout ' . $branch);
     $dialoger->dialogInfo('HEAD is now on branch <b>' . $branch . '</b>');
 }
Пример #5
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $params = new \DialoGit\ScriptParams();
     $files = $params->requireSelectedFiles();
     $quotedFiles = $params->requireSelectedFilesQuoted();
     $thisThese = count($files) == 1 ? 'this file' : 'these files';
     $dialoger->dialogConfirm('Are you sure you want to <b>delete</b> the <b>staged changes</b> for ' . $thisThese . '?\\n\\n' . addslashes(implode('\\n', $files)));
     $dialoger->runGit('checkout -- ' . implode(' ', $quotedFiles));
 }
Пример #6
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $params = new \DialoGit\ScriptParams();
     $files = $params->requireSelectedFiles();
     $quotedFiles = $params->requireSelectedFilesQuoted();
     $fileFiles = count($files) == 1 ? 'this file' : 'these files';
     $dialoger->dialogConfirm('Do you wish to <b>remove</b> ' . $fileFiles . ' from the <b>git repository</b> and from the <b>disk</b> for sure?\\n\\n' . addslashes(implode('\\n', $files)));
     $dialoger->runGit('rm -r -f ' . implode(' ', $quotedFiles));
 }
Пример #7
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Stash($dialoger);
     $stashes = $picker->pickMany('Pick one or more stashes to <b>drop</b>:');
     $thisThese = count($stashes) == 1 ? 'this stash' : 'these stashes';
     $dialoger->dialogConfirm('Do you wish to <b>drop</b> ' . $thisThese . ' for sure?\\n\\n' . implode("\n", $stashes));
     foreach ($stashes as $stash) {
         $dialoger->runGit('stash drop "' . $stash . '"');
     }
 }
Пример #8
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Remote($dialoger);
     $remotes = $picker->pickMany('Select one or more remote repositories to <b>remove</b>:');
     $thisThese = count($remotes) == 1 ? 'this remote repository' : 'these remote repositories';
     $dialoger->dialogConfirm('Do you wish to <b>remove</b> ' . $thisThese . ' for sure?\\n\\n' . implode("\n", $remotes));
     foreach ($remotes as $remote) {
         $dialoger->runGit('remote remove ' . $remote);
     }
 }
Пример #9
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $remotesPicker = new \DialoGit\Picker\Remote($dialoger);
     $remotes = $remotesPicker->pickMany('Pick one or more remotes repositories on to <b>push</b>:');
     $tagsPicker = new \DialoGit\Picker\Tag($dialoger);
     $tags = $tagsPicker->pickMany('Pick one or more tags to <b>push</b>:');
     foreach ($remotes as $remote) {
         foreach ($tags as $tag) {
             $dialoger->runGitOnNewShell('push ' . $remote . ' ' . $tag);
             sleep(1);
         }
     }
 }
Пример #10
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Branch($dialoger);
     $branches = $picker->getStructures();
     if (count($branches) == 1) {
         $dialoger->dialogError('There is only one local branch right now.');
         $dialoger->error();
     }
     $currentBranch = $picker->getCurrent();
     $branches = $picker->pickManyBut('HEAD is on <b>' . $currentBranch . '</b>\\n\\nPick one or more local branches to <b>delete</b>:', $currentBranch);
     $thisThese = count($branches) == 1 ? 'this local branch' : 'these local branches';
     $dialoger->dialogConfirm('Do you wish to <b>delete</b> ' . $thisThese . ' for sure?\\n\\n' . implode("\n", $branches));
     foreach ($branches as $branch) {
         $dialoger->runGit('branch -d ' . $branch);
     }
 }
Пример #11
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $buffer = new \DialoGit\Buffer(DIALOGIT_BUFFER_FILE_MV);
     if ($buffer->exists()) {
         // To
         $files = $buffer->getFiles();
         foreach ($files as $file) {
             $dialoger->runGit('mv ' . $file . ' .');
         }
         $buffer->remove();
     } else {
         // From
         $params = new \DialoGit\ScriptParams();
         $files = $params->requireSelectedFilesQuoted();
         $buffer->saveFiles($files);
     }
 }
Пример #12
0
 private function makeStructures()
 {
     $listResult = $this->dialoger->runGit($this->getGitListCommand());
     $lines = $this->parseOutputAsArray($listResult->getStdOut());
     $result = [];
     foreach ($lines as $line) {
         if ($this->isListOutputLineValid($line)) {
             $result[] = $this->parseListOutputLine($line);
         }
     }
     if (empty($result)) {
         $message = $this->getNoneHasBeenFoundExceptionMessage();
         throw new \DialoGit\Exception($message);
     }
     return $result;
 }
Пример #13
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $newBranch = $dialoger->dialogInput('New branch name:');
     $picker = new \DialoGit\Picker\Branch($dialoger);
     $currentBranch = $picker->getCurrent();
     $dialoger->runGit('branch ' . $newBranch);
     if ($dialoger->dialogQuestion('HEAD is on <b>' . $currentBranch . '</b>\\n\\nDo you want to checkout the new branch now?')) {
         $dialoger->runGit('checkout ' . $newBranch);
         $dialoger->dialogInfo('HEAD is now on branch <b>' . $newBranch . '</b>');
     }
 }
Пример #14
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $picker = new \DialoGit\Picker\Branch($dialoger);
     $branches = $picker->getStructures();
     if (count($branches) == 1) {
         $dialoger->dialogError('There is only one local branch right now.');
         $dialoger->error();
     }
     $currentBranch = $picker->getCurrent();
     if ($picker->isHeadOnBranch()) {
         $branch = $picker->pickOneBut('HEAD is on <b>' . $currentBranch . '</b>\\n\\nPick one local branch to <b>merge</b> with:', $currentBranch);
         $dialoger->dialogConfirm('Do you want to modify <b>' . $currentBranch . '</b> by merging the contents of <b>' . $branch . '</b> into it?');
         $dialoger->runGit('merge ' . $branch);
     } else {
         $dialoger->dialogError('Merge requires HEAD to be on a branch, but HEAD is on <b>' . $currentBranch . '</b>, which is not a branch.');
         $dialoger->error();
     }
 }
Пример #15
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $header = $dialoger->dialogInput('New commit header:');
     $dialoger->runGit('commit -m "' . $header . '"');
 }
Пример #16
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $dialoger->run('gitg');
 }
Пример #17
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $repositoryDir = $this->params->getGitRepositoryBaseDir();
     $dialoger->dialogConfirm('Are you sure you want to <b>delete</b> the <b>staged changes</b> for the Git repository base directory?\\n\\n' . $repositoryDir);
     $dialoger->runGit('checkout -- ' . $repositoryDir);
 }
Пример #18
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $dialoger->runGitOnNewShell('status');
 }
Пример #19
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $url = $dialoger->dialogInput('URL to clone:');
     $dialoger->runGitOnNewShell('clone ' . $url);
 }
Пример #20
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $name = $dialoger->dialogInput('New remote repository name:');
     $url = $dialoger->dialogInput('New remote repository URL:');
     $dialoger->runGit('remote add ' . $name . ' ' . $url);
 }
Пример #21
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $params = new \DialoGit\ScriptParams();
     $files = $params->requireSelectedFilesQuoted();
     $dialoger->runGit('add ' . implode(' ', $files));
 }
Пример #22
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $repositoryDir = $this->params->getGitRepositoryBaseDir();
     $dialoger->runGit('add "' . $repositoryDir . '"');
 }
Пример #23
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $name = $dialoger->dialogInput('New tag name:');
     $message = $dialoger->dialogInput('New tag message:');
     $dialoger->runGit('tag -m "' . $message . '" "' . $name . '"');
 }
Пример #24
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $dialoger->dialogConfirm('Are you sure you want to <b>delete</b> the <b>staged changes</b> for this directory?\\n\\n' . $this->params->getWorkingDir());
     $dialoger->runGit('checkout -- .');
 }
Пример #25
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $dialoger->runGit('add .');
 }
Пример #26
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $dialoger->runGitOnNewShell('mergetool');
 }
Пример #27
0
 protected function run(\DialoGit\Dialoger $dialoger)
 {
     $message = $dialoger->dialogInput('New stash message:');
     $dialoger->runGit('stash save "' . $message . '"');
 }