what you want to do is symmetric encryption (single key). You can do this with the -c or --symmetric flags to gpg:
This will ask for a passphrase twice, and the encrypted version of the file will end up in my_file.gpg.
You could also use asymmetric encryption (which solves the key distribution problem and is what gpg is actually built for), by using the recipients public key to encrypt the message. That way, only the recipient can decrypt it, without the need for a shared secret.
This will ask for the recipient. Specify the recipient by either his id (usually email) or pubkey ID.