I often use just plain old CLI adb push/pull. For Emacs users the built-in tramp-adb support is neat, you can use dired and other Emacs operations as if it was a local filesystem. I also run sshd in termux so scp and rsync are very handy too. Even sshfs mounts work but I use that less frequently.