Fix reset repo

This commit is contained in:
Vishesh Handa
2020-10-21 04:29:01 +02:00
parent c54b612368
commit 018dd4ca36
5 changed files with 19 additions and 5 deletions

View File

@ -3,6 +3,7 @@ import 'dart:io';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:dart_git/dart_git.dart';
import 'package:easy_localization/easy_localization.dart'; import 'package:easy_localization/easy_localization.dart';
import 'package:path/path.dart' as p; import 'package:path/path.dart' as p;
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -134,6 +135,7 @@ class _GitRemoteSettingsScreenState extends State<GitRemoteSettingsScreen> {
while (true) { while (true) {
var repoFolderPath = p.join(gitDir, "$repoFolderName$num"); var repoFolderPath = p.join(gitDir, "$repoFolderName$num");
if (!Directory(repoFolderPath).existsSync()) { if (!Directory(repoFolderPath).existsSync()) {
await GitRepository.init(repoFolderPath);
break; break;
} }
num++; num++;

View File

@ -495,8 +495,7 @@ class GitHostSetupScreenState extends State<GitHostSetupScreen> {
var basePath = stateContainer.appState.gitBaseDirectory; var basePath = stateContainer.appState.gitBaseDirectory;
var settings = Provider.of<Settings>(context, listen: false); var settings = Provider.of<Settings>(context, listen: false);
var repoName = settings.folderName; var repoPath = p.join(basePath, widget.repoFolderName);
var repoPath = p.join(basePath, repoName);
Log.i("RepoPath: $repoPath"); Log.i("RepoPath: $repoPath");
String error; String error;

View File

@ -327,7 +327,12 @@ class StateContainer with ChangeNotifier {
void completeGitHostSetup(String repoFolderName, String remoteName) { void completeGitHostSetup(String repoFolderName, String remoteName) {
() async { () async {
var repo = await GitRepository.load(_gitRepo.gitDirPath); var repoPath = p.join(appState.gitBaseDirectory, repoFolderName);
Log.i("completeGitHostSetup repoPath: $repoPath");
_gitRepo = GitNoteRepository(gitDirPath: repoPath, settings: settings);
var repo = await GitRepository.load(repoPath);
var remote = repo.config.remote(remoteName); var remote = repo.config.remote(remoteName);
var remoteBranch = await repo.guessRemoteHead(remoteName); var remoteBranch = await repo.guessRemoteHead(remoteName);
var remoteBranchName = remoteBranch.name.branchName(); var remoteBranchName = remoteBranch.name.branchName();
@ -359,6 +364,14 @@ class StateContainer with ChangeNotifier {
} }
this.repoPath = repoPath;
_notesCache.clear();
appState.remoteGitRepoConfigured = true;
appState.notesFolder.reset(repoPath);
settings.folderName = repoFolderName;
settings.save();
await _persistConfig(); await _persistConfig();
_loadNotes(); _loadNotes();
_syncNotes(); _syncNotes();

View File

@ -438,7 +438,7 @@ packages:
name: git_bindings name: git_bindings
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "0.0.17" version: "0.0.18"
git_url_parse2: git_url_parse2:
dependency: "direct main" dependency: "direct main"
description: description:

View File

@ -29,7 +29,7 @@ dependencies:
dynamic_theme: ^1.0.0 dynamic_theme: ^1.0.0
flutter_staggered_grid_view: ^0.3.0 flutter_staggered_grid_view: ^0.3.0
provider: ^4.3.2+2 provider: ^4.3.2+2
git_bindings: ^0.0.17 git_bindings: ^0.0.18
dart_git: dart_git:
git: https://github.com/GitJournal/dart_git.git git: https://github.com/GitJournal/dart_git.git
#path: /Users/vishesh/src/gitjournal/dart_git #path: /Users/vishesh/src/gitjournal/dart_git