what does "u" stand in git push -u origin stands

can we directly push code from git to github? how to do if no

how to change from git master to main

command for cloning form remote to Local?

URL for pushing code from local to remote?