pull: incorrect bar
```
(3.7.0-dvc) ➜  dvc git:(dvctags) ✗ dvc pull
Preparing to download data from 's3://dvc-share/dvc/'
Preparing to collect status from s3://dvc-share/dvc/
[##############################] 100% Collecting information
[##############################] 100% Analysing status.
(1/3): [##############################] 100% dvc_up.bmp
(2/3): [##############################] 100% dvc.ico
(3/3): [##############################] 100% dvc_left.bmp
(4/3): [##############################] 100% Checkout finished!
```

looks like checkout didn't reset progress counter
diff --git a/dvc/progress.py b/dvc/progress.py
index d101b7bf9..8444b808b 100644
--- a/dvc/progress.py
+++ b/dvc/progress.py
@@ -144,6 +144,7 @@ class ProgressCallback(object):
     def __init__(self, total):
         self.total = total
         self.current = 0
+        progress.reset()
 
     def update(self, name, progress_to_add=1):
         self.current += progress_to_add
diff --git a/tests/unit/test_progress.py b/tests/unit/test_progress.py
index 76e3ce9f8..34de53799 100644
--- a/tests/unit/test_progress.py
+++ b/tests/unit/test_progress.py
@@ -1,7 +1,7 @@
 import mock
 from unittest import TestCase
 
-from dvc.progress import progress, progress_aware
+from dvc.progress import progress, progress_aware, ProgressCallback
 
 
 class TestProgressAware(TestCase):
@@ -25,3 +25,13 @@ class TestProgressAware(TestCase):
         self.assertEqual(4, mock_print.call_count)
 
         progress.finish_target("testing")
+
+
+class TestProgressCallback(TestCase):
+    @mock.patch("dvc.progress.progress")
+    def test_should_init_reset_progress(self, progress_mock):
+        total_files_num = 1
+
+        ProgressCallback(total_files_num)
+
+        self.assertEqual([mock.call.reset()], progress_mock.method_calls)
['tests/unit/test_progress.py', 'dvc/progress.py']