You won't damage GPIO pins connected together if they are inputs (duh?) or if any that are outputs are set to the same logic level. Thus you can emulate "open collector" (open drain) outputs on a RPi by setting the GPIO Pin to be an input when it is inactive and setting the GPIO Pin to be an output set to "0" in the active state. As long as all sources in the network honor this convention it should work without damaging GPIO.
With open collector outputs an "or" function can be formed with a single pullup resistor (0 V is "active" state):
Likewise a 3.3V "active" state can be formed by using a pulldown resistor and setting the GPIO pin(s) to "1" in the active state and input in the inactive state.
This scheme is what is done to interface with "one wire" sensors like the DHT11/22 and DS18B20 which have two signal potential signal sources on the same wire.