Řešení
Aktualizace pro Microsoft Visual Studio 2013 (KB3023576) Stáhněte balíček aktualizace pro Microsoft Visual Studio 2013 Chcete-li vyřešit problém v Git.
Princip opravy
Pro Team Foundation Server (TFS), oprava odmítá jakékoli nabízené (odeslání), který obsahuje součást souboru nebo cesty, který odpovídá ".git" řetězec. Tím se zabrání uvedení chybné soubory na hostované repo operace.
Pro klienta Visual Studio oprava zabrání libovolný soubor rezervován do adresář .git. Naopak, zabraňuje repo operace, které obsahují chybné soubory ovlivnění uživatele místního počítače.O problém v Git
Jedná se o problém, který manifesty přes Git ekosystému a není jedinečné pro podporu úložiště Git v našich vývojových platformách společnosti Microsoft. Nicméně jsme důležité, proaktivní kroků potřebných k pomoci, ujistěte se, že zákazníci společnosti Microsoft, kteří používají úložiště Git chráněni před touto chybou.
Pomocí programu Git core byl zjištěn problém, který má vliv na všechny klienty Git. Tento problém umožňuje zavlečení Git repo souboru. Takovým způsobem, že když uživatel stáhne změny ve vzdáleném úložišti, může speciálně vytvořený soubor tiše nahradit uživatelské konfigurační soubor se nazývá soubor. Uživatelské konfigurační soubor je umístěn mimo úložiště. Nahrazením tohoto souboru chybný soubor můžete znovu namapovat git příkazy k provedení libovolných příkazů, které jsou spuštěny pod pověření uživatele.Dopad na Visual Studio
Visual Studio 2013 a Visual Studio TFS 2013 nejsou přímo tento problém týká. Visual Studio a TFS nespouštějte z metadat .git libovolných příkazů. Rezervace repo, který obsahuje speciálně vytvořený soubor by mohl způsobit přepsání části metadat .git, vystavení nástroje příkazového řádku Git pro systém Windows k vydání Visual Studio. Aby se zabránilo šíření tohoto problému byl aktivně opravené TFS.
Příčina
Každý místní databázi Git je udržována na disku v kořenové složce repo .git skryté adresáře. Pokud soubory jsou rezervován (např. po stažení rozloženy na místním disku), soubor s názvem ". GIT/config"je vložen do databáze Git. Porovnávání pro ".git" je částečně zodpovědné za tento problém. Navíc automatické zpracování cesty k souborům na platformách systému Windows rozšíří ohrožený soubor vzorků a mnohem více, než explicitně pojmenované ". GIT/config"vzorek.
Stav
Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".