Skip to content
Snippets Groups Projects
Commit f38d7b26 authored by Mark Hall's avatar Mark Hall
Browse files

Handle merge errors more cleanly

parent 856e06d6
Branches
Tags
No related merge requests found
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
## Development (): ## Development ():
* **Bugfix**: Handle git merge errors more cleanly
## 0.9.4 (11.03.2020): ## 0.9.4 (11.03.2020):
* **New**: Added support for marking up signatures * **New**: Added support for marking up signatures
......
...@@ -51,6 +51,7 @@ def repository(request, rid): ...@@ -51,6 +51,7 @@ def repository(request, rid):
repo.remotes.origin.fetch() repo.remotes.origin.fetch()
repo.remotes.origin.pull() repo.remotes.origin.pull()
except: except:
repo.git.checkout('--')
errors.append({'msg': _('Fetching changes failed'), errors.append({'msg': _('Fetching changes failed'),
'level': 'alert'}) 'level': 'alert'})
try: try:
...@@ -107,10 +108,13 @@ def local_merge(request, rid): ...@@ -107,10 +108,13 @@ def local_merge(request, rid):
repository.heads.master.checkout() repository.heads.master.checkout()
repository.remotes.origin.pull() repository.remotes.origin.pull()
repository.heads[request.user.username].checkout() repository.heads[request.user.username].checkout()
# Merge them in try:
repository.git.merge('master') # Merge them in
# Pull any branch changes repository.git.merge('master')
repository.remotes.origin.pull() # Pull any branch changes
# Push all changes repository.remotes.origin.pull()
repository.remotes.origin.push() # Push all changes
repository.remotes.origin.push()
except:
repository.git.merge('--abort')
return HttpResponse('', status=200) return HttpResponse('', status=200)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment