mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-02-18 13:47:45 +01:00
- Replace git pull with fetch + merge to avoid conflicts with global git config (e.g. pull.ff=only) and background fetch --all - Disable commit/commit+push buttons when message is empty - Always show Push/Pull menu items even without remotes configured - Default remote name to 'origin' when adding a new remote
21 lines
763 B
TypeScript
21 lines
763 B
TypeScript
import type { GitRemote } from '@yaakapp-internal/git';
|
|
import { gitMutations } from '@yaakapp-internal/git';
|
|
import { showPromptForm } from '../../lib/prompt-form';
|
|
import { gitCallbacks } from './callbacks';
|
|
|
|
export async function addGitRemote(dir: string, defaultName?: string): Promise<GitRemote> {
|
|
const r = await showPromptForm({
|
|
id: 'add-remote',
|
|
title: 'Add Remote',
|
|
inputs: [
|
|
{ type: 'text', label: 'Name', name: 'name', defaultValue: defaultName },
|
|
{ type: 'text', label: 'URL', name: 'url' },
|
|
],
|
|
});
|
|
if (r == null) throw new Error('Cancelled remote prompt');
|
|
|
|
const name = String(r.name ?? '');
|
|
const url = String(r.url ?? '');
|
|
return gitMutations(dir, gitCallbacks(dir)).addRemote.mutateAsync({ name, url });
|
|
}
|