Earlier quoted context omitted.
The problem is the client. With a client that does proper encryption, you could store your data on one of the huge TV screens in Times Square and have complete privacy. A server should just be a dumb, transparent container. Whether it's Github or some custom-made "super secure" server doesn't matter. The real magic happens in the client.
the problem is where should the client store encryption keys?if one has multiple client on multiple devices,how one does manage all of them?(that's just a question,thanks).
A key generated from a username/passphrase will work fine. Generally you'd use a key derivation function (eg PBKDF2) which turns your auth information into a 32-byte (256 bit) cryptographic "master key." Assuming you can remember your passphrase, then you can easily re-generate your key when you "log in" from any machine.