Command mv moves files. When file in destination exists, it will be replaced. The right command to copy file is cp. It's used same way as mv.

Command mv git.sh /root/* will substitute wildcard char * with all names the directory contains. Then there are a few cases:

/root contains multiple files or directories: command will fail

/root contains one file: git.sh will be moved and replace the file in directory /root

/root is empty: git.sh will be moved as git.sh to /root

mv will remove source but cp keeps it.

It's better to have destination path with filename, for example mv git.sh /root/git.sh. When moving multiple files use destination path just to directory without filename or wildcard chars, for example mv dir/* /root/. When you want to move directory with subdirectories add -R argument.