Между вами и клиентом существует письменный договор, вы подписали его, когда приняли Условия обслуживания oDesk (TOS). Я также работаю над oDesk и поэтому знаком с их TOS:
Смотрящий здесь в разделе 8.6:
Права собственности на Рабочий продукт должны принадлежать Фрилансеру до тех пор, пока Клиент не произведет оплату, после чего будет считаться, что Фрилансер передал Клиенту все Права собственности на Рабочий продукт.
Это означает, что как только клиент заплатит вам за выполненную вами работу, он станет владельцем написанного вами кода. Права интеллектуальной собственности принадлежат им.
Клиент сам решает, что делать с этим кодом. Обычно я храню весь код, который пишу, в частном репозитории, чтобы, если клиенту потребуется, чтобы я проделал дополнительную работу или изменил написанный мной код, я мог легко получить к нему доступ. Если клиент требует, чтобы я удалил весь код (что бывает редко, но возможно), то по контракту я обязан это сделать.
Публикация этого кода не зависит от вас, клиент должен решить, что он будет делать с кодом.
Примечание: обычно большинство людей не читают Условия использования веб-сайтов, но в некоторых случаях, как этот, невероятно важно прочитать Условия использования и знать, что там содержится, иначе могут возникнуть серьезные юридические последствия.