Skip to content

Commit

Permalink
Fixed git synchronization (cvat-ai#1582)
Browse files Browse the repository at this point in the history
* fixed git synchronization

* Update CHANGELOG.md

Co-authored-by: Nikita Manovich <[email protected]>
  • Loading branch information
2 people authored and Fernando Martínez González committed Aug 3, 2020
1 parent 5ccfa2f commit 3a327b7
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 10 deletions.
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Fixed COCO keypoints skeleton parsing and saving (https://github.com/opencv/cvat/issues/1539)
- Fixed an error when exporting a task with cuboids to any format except CVAT (https://github.com/opencv/cvat/pull/1577)
- `tf.placeholder() is not compatible with eager execution` exception for auto_segmentation (https://github.com/opencv/cvat/pull/1562)
- Fixed a problem with mask to polygons conversion when polygons are too small (https://github.com/opencv/cvat/pull/1581)
- Synchronization with remote git repo (https://github.com/opencv/cvat/pull/1582)
- A problem with mask to polygons conversion when polygons are too small (https://github.com/opencv/cvat/pull/1581)

### Security
-
Expand Down
17 changes: 8 additions & 9 deletions cvat/apps/git/git.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,12 @@
import shutil
import subprocess
from glob import glob
from tempfile import TemporaryDirectory
import zipfile

import django_rq
import git
from django.db import transaction
from django.utils import timezone
from pyunpack import Archive

from cvat.apps.dataset_manager.task import export_task
from cvat.apps.engine.log import slogger
Expand Down Expand Up @@ -284,16 +283,16 @@ def push(self, user, scheme, host, db_task, last_save):
if ext == '.zip':
shutil.move(dump_name, self._annotation_file)
elif ext == '.xml':
with TemporaryDirectory() as tmp_dir:
# TODO: remove extra packing-unpacking
Archive(src_path).extractall(tmp_dir)
anno_paths = glob(osp.join(tmp_dir, '**', '*.xml'),
recursive=True)
shutil.move(anno_paths[0], self._annotation_file)
with zipfile.ZipFile(dump_name) as archive:
for f in archive.namelist():
if f.endswith('.xml'):
with open(self._annotation_file, 'wb') as output:
output.write(archive.read(f))
break
os.remove(dump_name)
else:
raise Exception("Got unknown annotation file type")

os.remove(dump_name)
self._rep.git.add(self._annotation_file)

# Merge diffs
Expand Down

0 comments on commit 3a327b7

Please sign in to comment.