def push(self, remote: str='origin', remote_branch: Optional[str]=None, message: Optional[str]=None, author: Optional[str]=None) -> dict:
    'Push changes from a branch to a remote repo\n\n        Parameters\n        ----------\n        remote: str\n            remote to push to, default "origin"\n        remote_branch: str, optional\n            remote branch to push to, default to be your current barnch\n        message: str, optional\n            optional commit message\n        author: str, optional\n            option to overide the author of the operation\n\n        Raises\n        ------\n        InterfaceError\n            if the client does not connect to a database\n\n        Examples\n        -------\n        >>> WOQLClient(server="http://localhost:6363").push(remote="origin", remote_branch = "main", author = "admin", message = "commit message"})\n\n        Returns\n        -------\n        dict\n        '
    self._check_connection()
    if (remote_branch is None):
        remote_branch = self.branch
    if (author is None):
        author = self._author
    if (message is None):
        message = f'Pushing to {remote}/{remote_branch} by Python client {__version__}'
    rc_args = {'remote': remote, 'remote_branch': remote_branch, 'author': author, 'message': message}
    result = requests.post(self._push_url(), headers={'user-agent': f'terminusdb-client-python/{__version__}'}, json=rc_args, auth=self._auth())
    return json.loads(_finish_response(result))
Push changes from a branch to a remote repo

Parameters
----------
remote: str
    remote to push to, default "origin"
remote_branch: str, optional
    remote branch to push to, default to be your current barnch
message: str, optional
    optional commit message
author: str, optional
    option to overide the author of the operation

Raises
------
InterfaceError
    if the client does not connect to a database

Examples
-------
>>> WOQLClient(server="http://localhost:6363").push(remote="origin", remote_branch = "main", author = "admin", message = "commit message"})

Returns
-------
dict
def push(self, remote: str='origin', remote_branch: Optional[str]=None, message: Optional[str]=None, author: Optional[str]=None) -> dict:
    'Push changes from a branch to a remote repo\n\n        Parameters\n        ----------\n        remote: str\n            remote to push to, default "origin"\n        remote_branch: str, optional\n            remote branch to push to, default to be your current barnch\n        message: str, optional\n            optional commit message\n        author: str, optional\n            option to overide the author of the operation\n\n        Raises\n        ------\n        InterfaceError\n            if the client does not connect to a database\n\n        Examples\n        -------\n        >>> WOQLClient(server="http://localhost:6363").push(remote="origin", remote_branch = "main", author = "admin", message = "commit message"})\n\n        Returns\n        -------\n        dict\n        '
    self._check_connection()
    if (remote_branch is None):
        remote_branch = self.branch
    if (author is None):
        author = self._author
    if (message is None):
        message = f'Pushing to {remote}/{remote_branch} by Python client {__version__}'
    rc_args = {'remote': remote, 'remote_branch': remote_branch, 'author': author, 'message': message}
    result = requests.post(self._push_url(), headers={'user-agent': f'terminusdb-client-python/{__version__}'}, json=rc_args, auth=self._auth())
    return json.loads(_finish_response(result))