How long does your passport have to be valid for to travel to the US?
United States require your passport be valid for a minimum of 90 starting from your date of departure. However, it is always recommended to have a minimum of 6 months validity when traveling to another country.
You can travel within the US with a green card so long as it is valid. A green card is NOT a valid document for international travel outside the US. To travel outside the US, you will need a passport and possibly visas depending upon the passport you hold and the country you visit. Please check with the local embassy/consulate for the most up to date visa requirements for your country's passport prior to travel.
Practically, it is safe to travel with a legitimate, valid passport of your country. If you are a dual passport holder then you use the particular passport for that country and the other passport for the other country. like if you are travelling to US then use US passport if you are travelling Canada use your Canadian passport.
my question is related to German visa on old passport. Answer When you get a new passport keep the old passport with the current US Visa with your new passport as the visa is still valid even though the old passport has been cancelled. Then whenever you travel to the US just show both passports to the authorities on arrival in the US.