Glad to hear that you can now upload code.
This depends on what you're uploading. If your sketch crashes for whatever reason, it's possible to lose the COM port. Does this happen when you upload a simple sketch, such as "Blink"?
Does your bootloader's COM port appear if you double tap the reset button?
There are various ways to do this. If you're using Windows, it's possible to use Microchip/Atmel Studio 7, without having build using a makefile.
Navigate to the Arduino Zero's bootloader directory:
Make a copy of the "zero" directory and call it say "zero2".
Launch Atmel Studio and open the booloader Solution/Project "samd21_samba.atsln" in the "zero2" directory.
In Atmel Studio open the bootloader file "board_definitions_arduino_zero.h". Here you'll find the configuration definitions for the bootloader itself and can edit the LED status pins, as well as the auxiliary UART that can be used in addition to the native USB port to upload code.