git checkout develop
git checkout -b feature develop
git add .
git commit -m 'TEST MESSAGE'
git push --set-upstream origin feature //первый раз при пуше, далее просто git push origin feature

git checkout develop
git merge --no-ff feature
git push origin develop

git show-branch | grep '*' | grep -v "$(git rev-parse --abbrev-ref HEAD)" | head -n1 | sed 's/.*\[\(.*\)\].*/\1/' | sed 's/[\^~].*//'

//Удалить коммиты до какого то в репе
git reset --soft c4fe30b0345437c915f9384ff92aa674fd9703ef
git push --force

# Rename the local branch to the new name
git branch -m <old_name> <new_name>

# Delete the old branch on remote - where <remote> is, for example, origin
git push <remote> --delete <old_name>

# Or shorter way to delete remote branch [:]
git push <remote> :<old_name>

# Prevent git from using the old name when pushing in the next step.
# Otherwise, git will use the old upstream name instead of <new_name>.
git branch --unset-upstream <old_name>

# Push the new branch to remote
git push <remote> <new_name>

# Reset the upstream branch for the new_name local branch
git push <remote> -u <new_name>