diff --git a/swh/loader/git/from_disk.py b/swh/loader/git/from_disk.py
--- a/swh/loader/git/from_disk.py
+++ b/swh/loader/git/from_disk.py
@@ -228,6 +228,12 @@
             else:
                 branches[ref] = None
 
+        for ref, target in self.repo.refs.get_symrefs().items():
+            branches[ref] = {
+                'target': target,
+                'target_type': 'alias',
+            }
+
         self.snapshot = converters.branches_to_snapshot(branches)
         return self.snapshot
 
diff --git a/swh/loader/git/loader.py b/swh/loader/git/loader.py
--- a/swh/loader/git/loader.py
+++ b/swh/loader/git/loader.py
@@ -234,11 +234,14 @@
 
             pack_buffer.write(data)
 
-        remote_refs = client.fetch_pack(path,
+        pack_result = client.fetch_pack(path,
                                         base_repo.determine_wants,
                                         base_repo.graph_walker(),
                                         do_pack,
-                                        progress=do_activity).refs
+                                        progress=do_activity)
+
+        remote_refs = pack_result.refs
+        symbolic_refs = pack_result.symrefs
 
         if remote_refs:
             local_refs = base_repo.find_remote_ref_types_in_swh(remote_refs)
@@ -252,6 +255,7 @@
         return {
             'remote_refs': base_repo.filter_unwanted_refs(remote_refs),
             'local_refs': local_refs,
+            'symbolic_refs': symbolic_refs,
             'pack_buffer': pack_buffer,
             'pack_size': pack_size,
         }
@@ -313,6 +317,7 @@
 
         self.remote_refs = fetch_info['remote_refs']
         self.local_refs = fetch_info['local_refs']
+        self.symbolic_refs = fetch_info['symbolic_refs']
 
         origin_url = self.origin['url']
 
@@ -466,6 +471,9 @@
 
             branches[ref] = ret_ref
 
+        for ref, target in self.symbolic_refs.items():
+            branches[ref] = {'target_type': 'alias', 'target': target}
+
         self.snapshot = converters.branches_to_snapshot(branches)
         return self.snapshot
 
diff --git a/swh/loader/git/tests/test_from_disk.py b/swh/loader/git/tests/test_from_disk.py
--- a/swh/loader/git/tests/test_from_disk.py
+++ b/swh/loader/git/tests/test_from_disk.py
@@ -32,14 +32,14 @@
     '4bdb40dfd6ec75cb730e678b5d7786e30170c5fb',  # file2.txt
 }
 
-SNAPSHOT_ID = 'bdf3b06d6017e0d9ad6447a73da6ff1ae9efb8f0'
+SNAPSHOT_ID = 'a23699280a82a043f8c0994cf1631b568f716f95'
 
 SNAPSHOT1 = {
     'id': SNAPSHOT_ID,
     'branches': {
         'HEAD': {
-            'target': '2f01f5ca7e391a2f08905990277faf81e709a649',
-            'target_type': 'revision',
+            'target': 'refs/heads/master',
+            'target_type': 'alias',
         },
         'refs/heads/master': {
             'target': '2f01f5ca7e391a2f08905990277faf81e709a649',