6060
6161class UpdateProgress (RemoteProgress ):
6262 """Class providing detailed progress information to the caller who should
63- derive from it and implement the ``update(...)`` message."""
63+ derive from it and implement the
64+ :meth:`update(...) <git.util.RemoteProgress.update>` message."""
6465
6566 CLONE , FETCH , UPDWKTREE = [1 << x for x in range (RemoteProgress ._num_op_codes , RemoteProgress ._num_op_codes + 3 )]
6667 _num_op_codes : int = RemoteProgress ._num_op_codes + 3
@@ -76,8 +77,8 @@ class UpdateProgress(RemoteProgress):
7677
7778
7879# IndexObject comes via the util module. It's a 'hacky' fix thanks to Python's import
79- # mechanism, which causes plenty of trouble if the only reason for packages and
80- # modules is refactoring - subpackages shouldn't depend on parent packages.
80+ # mechanism, which causes plenty of trouble if the only reason for packages and modules
81+ # is refactoring - subpackages shouldn't depend on parent packages.
8182class Submodule (IndexObject , TraversableIterableObj ):
8283 """Implements access to a git submodule. They are special in that their sha
8384 represents a commit in the submodule's repository which is to be checked out
@@ -119,11 +120,19 @@ def __init__(
119120 We only document the parameters that differ from
120121 :class:`~git.objects.base.IndexObject`.
121122
122- :param repo: Our parent repository.
123- :param binsha: Binary sha referring to a commit in the remote repository. See
124- the ``url`` parameter.
125- :param parent_commit: See :meth:`set_parent_commit`.
126- :param url: The URL to the remote repository which is the submodule.
123+ :param repo:
124+ Our parent repository.
125+
126+ :param binsha:
127+ Binary sha referring to a commit in the remote repository.
128+ See the `url` parameter.
129+
130+ :param parent_commit:
131+ See :meth:`set_parent_commit`.
132+
133+ :param url:
134+ The URL to the remote repository which is the submodule.
135+
127136 :param branch_path: Complete relative path to ref to checkout when cloning the
128137 remote repository.
129138 """
@@ -1313,9 +1322,11 @@ def exists(self) -> bool:
13131322 @property
13141323 def branch (self ) -> "Head" :
13151324 """
1316- :return: The branch instance that we are to checkout
1325+ :return:
1326+ The branch instance that we are to checkout
13171327
1318- :raise InvalidGitRepositoryError: If our module is not yet checked out
1328+ :raise InvalidGitRepositoryError:
1329+ If our module is not yet checked out.
13191330 """
13201331 return mkhead (self .module (), self ._branch_path )
13211332
@@ -1329,7 +1340,10 @@ def branch_path(self) -> PathLike:
13291340
13301341 @property
13311342 def branch_name (self ) -> str :
1332- """:return: The name of the branch, which is the shortest possible branch name"""
1343+ """
1344+ :return:
1345+ The name of the branch, which is the shortest possible branch name
1346+ """
13331347 # Use an instance method, for this we create a temporary Head instance
13341348 # which uses a repository that is available at least (it makes no difference).
13351349 return git .Head (self .repo , self ._branch_path ).name
@@ -1342,9 +1356,11 @@ def url(self) -> str:
13421356 @property
13431357 def parent_commit (self ) -> "Commit_ish" :
13441358 """
1345- :return: Commit instance with the tree containing the .gitmodules file
1359+ :return:
1360+ Commit instance with the tree containing the ``.gitmodules`` file
13461361
1347- :note: Will always point to the current head's commit if it was not set explicitly.
1362+ :note:
1363+ Will always point to the current head's commit if it was not set explicitly.
13481364 """
13491365 if self ._parent_commit is None :
13501366 return self .repo .commit ()
@@ -1353,33 +1369,40 @@ def parent_commit(self) -> "Commit_ish":
13531369 @property
13541370 def name (self ) -> str :
13551371 """
1356- :return: The name of this submodule. It is used to identify it within the
1357- .gitmodules file.
1372+ :return:
1373+ The name of this submodule. It is used to identify it within the
1374+ ``.gitmodules`` file.
13581375
1359- :note: By default, this is the name is the path at which to find the submodule,
1360- but in GitPython it should be a unique identifier similar to the identifiers
1376+ :note:
1377+ By default, this is the name is the path at which to find the submodule, but
1378+ in GitPython it should be a unique identifier similar to the identifiers
13611379 used for remotes, which allows to change the path of the submodule easily.
13621380 """
13631381 return self ._name
13641382
13651383 def config_reader (self ) -> SectionConstraint [SubmoduleConfigParser ]:
13661384 """
1367- :return: ConfigReader instance which allows you to query the configuration
1368- values of this submodule, as provided by the .gitmodules file.
1385+ :return:
1386+ ConfigReader instance which allows you to query the configuration values of
1387+ this submodule, as provided by the ``.gitmodules`` file.
13691388
1370- :note: The config reader will actually read the data directly from the
1371- repository and thus does not need nor care about your working tree.
1389+ :note:
1390+ The config reader will actually read the data directly from the repository
1391+ and thus does not need nor care about your working tree.
13721392
1373- :note: Should be cached by the caller and only kept as long as needed.
1393+ :note:
1394+ Should be cached by the caller and only kept as long as needed.
13741395
1375- :raise IOError: If the .gitmodules file/blob could not be read.
1396+ :raise IOError:
1397+ If the ``.gitmodules`` file/blob could not be read.
13761398 """
13771399 return self ._config_parser_constrained (read_only = True )
13781400
13791401 def children (self ) -> IterableList ["Submodule" ]:
13801402 """
1381- :return: IterableList(Submodule, ...) an iterable list of submodules instances
1382- which are children of this submodule or 0 if the submodule is not checked out.
1403+ :return:
1404+ IterableList(Submodule, ...) An iterable list of submodules instances which
1405+ are children of this submodule or 0 if the submodule is not checked out.
13831406 """
13841407 return self ._get_intermediate_items (self )
13851408
@@ -1395,7 +1418,10 @@ def iter_items(
13951418 * Args : Any ,
13961419 ** kwargs : Any ,
13971420 ) -> Iterator ["Submodule" ]:
1398- """:return: Iterator yielding Submodule instances available in the given repository"""
1421+ """
1422+ :return:
1423+ Iterator yielding Submodule instances available in the given repository
1424+ """
13991425 try :
14001426 pc = repo .commit (parent_commit ) # Parent commit instance
14011427 parser = cls ._config_parser (repo , pc , read_only = True )
@@ -1423,8 +1449,8 @@ def iter_items(
14231449 entry = index .entries [index .entry_key (p , 0 )]
14241450 sm = Submodule (repo , entry .binsha , entry .mode , entry .path )
14251451 except KeyError :
1426- # The submodule doesn't exist, probably it wasn't
1427- # removed from the .gitmodules file.
1452+ # The submodule doesn't exist, probably it wasn't removed from the
1453+ # .gitmodules file.
14281454 continue
14291455 # END handle keyerror
14301456 # END handle critical error
0 commit comments