คำถามติดแท็ก git

Git เป็นระบบควบคุมเวอร์ชันแจกจ่ายแบบโอเพนซอร์ซ (DVCS) ใช้แท็กนี้สำหรับคำถามที่เกี่ยวข้องกับการใช้งาน Git และเวิร์กโฟลว์ อย่าใช้แท็ก [github] สำหรับปัญหาที่เกี่ยวข้องกับ Git เพียงเพราะพื้นที่เก็บข้อมูลเกิดขึ้นเพื่อโฮสต์บน GitHub นอกจากนี้อย่าใช้แท็กนี้สำหรับคำถามการเขียนโปรแกรมทั่วไปที่เกี่ยวข้องกับที่เก็บ Git

8
BitBucket แหล่งดาวน์โหลดเป็น ZIP
ฉันรู้ว่าฉันจะได้รับโครงการผ่านgit cloneคำสั่ง แต่จะมีวิธีใด ๆ กับวิธีการดาวน์โหลดโครงการผ่านเว็บอินเตอร์เฟสจากBitBucket.org ? ในวิธีที่ดีที่สุดฉันกำลังมองหาวิธีการดาวน์โหลดแหล่งโครงการเป็นไฟล์บีบอัด ZIP

4
การใช้เบ็ดหลังการคอมไพล์คอมไพล์กับ repos ปัจจุบันและอนาคตทั้งหมด
ฉันเขียนเบ็ดหลังการคอมมิท Git และทำงานได้ถูกต้อง อย่างไรก็ตามฉันต้องการเพิ่ม hook นี้เพื่อใช้กับที่เก็บ git ปัจจุบัน (และอนาคต) ทั้งหมดที่ฉันกำลังทำงานอยู่ ฉันพยายามเพิ่มเบ็ดลง~/.git/hooks/ในไดเรกทอรี hooks ในไดเรกทอรีโครงการ แต่ดูเหมือนจะไม่ทำงาน มีวิธีใดในการสร้าง hooks Git ทั่วโลกที่จะนำไปใช้กับที่เก็บข้อมูลทั้งหมดในระบบของฉัน (โดยไม่ต้องคัดลอกลงในแต่ละไดเรกทอรีโครงการ) หากไม่มีสิ่งใดจะเป็นทางออกที่ดีที่สุดในอนาคต - อาจเป็นเทมเพลต git-init?
275 git  hook  githooks 

6
วิธีการทำให้สาขา git ซิงค์กับมาสเตอร์
ในขณะที่คอมไพล์กำลังทำอยู่ฉันไม่สามารถหาวิธีแก้ปัญหาที่ดีที่สุดสำหรับสิ่งต่อไปนี้ได้ มีสองสาขาหนึ่งเรียกว่าต้นแบบและเป็นหนึ่งเรียกว่าmobiledevicesupport ฉันต้องการให้ mobiledevicesupport เป็นสาขาต่อเนื่องที่จะถูกผสาน / ซิงค์กับสาขาหลักเมื่อใดก็ตามที่ mobiledevicesupport มีความเสถียร สิ่งนี้จะรวมการเปลี่ยนแปลงจาก mobiledevicesupport เข้ากับ master แต่ยังนำการเปลี่ยนแปลงทั้งหมดจาก master เข้าสู่ mobiledevicesupport เพื่อให้สาขาสามารถทำงานต่อไปได้และคุณสมบัติที่ปรับปรุงหรือแก้ไข สิ่งนี้ต้องการทำงานกับที่เก็บส่วนกลางและผู้พัฒนาหลายคน โปรดเป็นตัวอย่างของเวิร์กโฟลว์ที่คล้ายกันที่ผู้อื่นใช้หรือบอกฉันว่าแนวคิดนี้โง่และฉันควรพิจารณาตัวเลือกอื่น ๆ ในขณะที่เวิร์กโฟลว์ดูเหมือนเสียง แต่ฉันไม่รู้ว่าฉันจะทำให้คอมไพล์ทำงานได้อย่างไร ขอบคุณทุกคนช่วยชื่นชมมาก อัปเดต 1: ถ้าฉันจะรวมมาสเตอร์เข้ากับ mobiledevicesuices และ mobiledevice support เป็น master ฉันจะได้รับคอมมิชชันที่ทำซ้ำในทั้งสองสาขาหรือไม่ หรือคอมไพล์ฉลาดพอที่จะคิดออกว่าฉันได้ดึงการเปลี่ยนแปลงล่าสุดจากสาขา A ไปยังสาขา B และเพิ่มการผสานกระทำ C ถึงสาขา B และฉันได้ดึงการเปลี่ยนแปลงล่าสุดจากสาขา B เป็นสาขา A และเพิ่มการผสานกระทำ D ถึงสาขา หรือไม่ …
275 git 

4
Git Shelve vs Stash
ฉันไม่คุ้นเคยกับshelveแง่มุมของ Git มาก หากstashใช้เพื่อทิ้งงานที่ยังไม่เสร็จอะไรคือshelveอะไร? คุณจะใช้มันเพื่ออะไร ตัวอย่างเช่นใน Update Project (จากเมนู VCS) หนึ่งจะได้รับ (ในความคิด 2019.2)

20
การเปลี่ยนแปลงที่ไม่ดำเนินการค้างอยู่หลังจากรีเซ็ต - คอมไพล์แล้ว
หลังจากgit reset --hard, git statusให้ฉันไฟล์ภายในChanges not staged for commit:ส่วน ฉันเคยลองgit reset .แล้วgit checkout -- .และgit checkout-index -f -aก็ไม่มีประโยชน์ ดังนั้นฉันจะกำจัดการเปลี่ยนแปลงที่ไม่มีสถานะเหล่านั้นได้อย่างไร ดูเหมือนว่าจะตีไฟล์โครงการ Visual Studio เท่านั้น แปลก. ดูวางนี้: http://pastebin.com/eFZwPn9Z มีอะไรพิเศษกับไฟล์เหล่านั้นคือใน. gitattributes ฉันมี: *.sln eol=crlf *.vcproj eol=crlf *.vcxproj* eol=crlf นอกจากนี้ยังมีการตั้งค่าที่ผิดพลาดในระดับโลกของฉันautocrlf .gitconfigนั่นอาจจะเกี่ยวข้องอย่างใด?
275 git  git-reset 

11
Gitignore ไม่ทำงาน
.gitignoreไฟล์ของฉันใช้งานไม่ได้ด้วยเหตุผลบางอย่างและไม่สามารถแก้ไขจำนวน Googling ได้ นี่คือสิ่งที่ฉันมี: *.apk *.ap_ *.dex *.class **/bin/ **/gen/ .gradle/ build/ local.properties **/proguard/ *.log มันอยู่ในไดเรกทอรีmasterซึ่งเป็น repit คอมไพล์ของฉัน ฉันใช้ Git 1.8.4.2 อยู่เพราะฉันใช้ MacBook ที่ใช้ OSX 10.8.6
275 git  gitignore 

24
ฉันจะวางฐานข้อมูลภายใต้ git (การควบคุมเวอร์ชัน) ได้อย่างไร?
ฉันกำลังทำเว็บแอปและฉันต้องการสร้างสาขาสำหรับการเปลี่ยนแปลงที่สำคัญบางอย่างสิ่งนี้คือการเปลี่ยนแปลงเหล่านี้ต้องการการเปลี่ยนแปลงสกีมาฐานข้อมูลดังนั้นฉันจึงต้องการให้ฐานข้อมูลทั้งหมดอยู่ภายใต้ระบบคอมไพล์เช่นกัน ฉันจะทำอย่างไร มีโฟลเดอร์เฉพาะที่ฉันสามารถเก็บภายใต้พื้นที่เก็บข้อมูล git หรือไม่ ฉันจะรู้ได้อย่างไรว่าอันไหน ฉันจะแน่ใจได้อย่างไรว่าฉันวางโฟลเดอร์ที่ถูกต้อง? ฉันต้องแน่ใจเพราะการเปลี่ยนแปลงเหล่านี้ไม่สามารถใช้งานร่วมกับระบบย้อนหลังได้ ฉันไม่สามารถจะพลาด ฐานข้อมูลในกรณีของฉันคือ PostgreSQL แก้ไข: มีคนแนะนำให้ทำการสำรองข้อมูลและวางไฟล์สำรองข้อมูลไว้ภายใต้การควบคุมเวอร์ชันแทนฐานข้อมูล พูดตามตรงฉันพบว่ากลืนยากจริงๆ จะต้องมีวิธีที่ดีกว่า ปรับปรุง: ตกลงดังนั้นจึงไม่มีวิธีที่ดีกว่านี้ แต่ฉันก็ยังไม่ค่อยมั่นใจดังนั้นฉันจะเปลี่ยนคำถามเล็กน้อย: ฉันต้องการวางฐานข้อมูลทั้งหมดภายใต้การควบคุมเวอร์ชันฉันสามารถใช้เอ็นจินฐานข้อมูลใดได้บ้างเพื่อให้ฉันสามารถวางฐานข้อมูลจริงภายใต้การควบคุมเวอร์ชันแทนการดัมพ์ sqlite จะเป็น git-friendly หรือไม่? เนื่องจากนี่เป็นเพียงสภาพแวดล้อมการพัฒนาฉันสามารถเลือกฐานข้อมูลใดก็ได้ที่ฉันต้องการ Edit2: สิ่งที่ฉันต้องการจริงๆไม่ใช่เพื่อติดตามประวัติการพัฒนาของฉัน แต่เพื่อให้สามารถเปลี่ยนจาก "การเปลี่ยนแปลงที่รุนแรงใหม่" ของฉันเป็น "สาขาที่มีความเสถียรในปัจจุบัน" และสามารถอินสแตนซ์เพื่อแก้ไขข้อบกพร่อง / ปัญหาอื่น ๆ ด้วยปัจจุบัน สาขาที่มั่นคง เช่นเมื่อฉันเปลี่ยนสาขาฐานข้อมูลอัตโนมัติอย่างน่าอัศจรรย์จะเข้ากันได้กับสาขาที่ฉันกำลังใช้อยู่ ฉันไม่ค่อยสนใจข้อมูลจริงมากนัก

6
ความแตกต่างระหว่าง Git Revert, Checkout และ Reset
ฉันพยายามที่จะเรียนรู้วิธีการที่จะเรียกคืนหรือไฟล์ย้อนกลับและโครงการไปยังรัฐก่อนและไม่เข้าใจความแตกต่างระหว่างgit revert, และcheckout resetเหตุใดจึงมี 3 คำสั่งต่างกันสำหรับวัตถุประสงค์เดียวกันและเมื่อมีคนควรเลือกคำสั่งอื่น

3
ความหมายของการเช็คเอาต์ Git ขีดคั่นสองครั้ง
ความหมายของเครื่องหมายขีดกลางคู่หน้าชื่อไฟล์ในคำสั่ง git นี้คืออะไร git checkout --ours -- path/to/file.txt git checkout --theirs -- path/to/file.txt พวกมันบังคับเหรอ? มันเทียบเท่ากับ git checkout --ours path/to/file.txt git checkout --theirs path/to/file.txt
274 git  git-checkout 


6
ค้นหารหัสภายในโครงการ Github
มีวิธี grep สำหรับบางสิ่งบางอย่างในรหัสของโครงการ Github หรือไม่? ฉันสามารถดึงแหล่งที่มาและ grep ไว้ในเครื่องได้ แต่ฉันสงสัยว่าเป็นไปได้ผ่านทางเว็บอินเตอร์เฟสหรือทางเลือกอื่น ไอเดีย?
272 git  search  github 

14
ไม่สามารถพุชไปที่ GitHub ได้เพราะไฟล์ขนาดใหญ่ที่ฉันลบไปแล้ว
ปัจจุบันฉันมี ล้าง GitHub repo เซิร์ฟเวอร์ repos SSH (หลัก) Repo ท้องถิ่น SSH เซิร์ฟเวอร์ repo เป็น repo ที่ทันสมัยที่สุด (ไซต์ที่ใช้งานจริง) ดังนั้นฉันจึงทำ Git clone จากที่นั่นไปยังท้องถิ่น จากนั้นฉันก็ลองทำgit pushกับ GitHub ทุกอย่างก็โอเค แต่มันก็พูดอะไรบางอย่างเกี่ยวกับ filename.gz ใหญ่เกินไปสำหรับ GitHub ฉันไม่ต้องการไฟล์นี้ดังนั้นฉันจึงรันคำสั่ง Git หลายคำเพื่อกำจัดมันออกจากแคช Git แล้วผลักกลับไปที่เซิร์ฟเวอร์ SSH ฉันไม่เห็นไฟล์ขนาดใหญ่ในเครื่อง แต่ยังคงอยู่บนเซิร์ฟเวอร์ SSH แม้ว่าgit diffจะไม่ส่งคืนอะไรเลยและ git push จะส่งคืน "ทุกอย่างเป็นปัจจุบัน" - และแม้ว่าไฟล์จะไม่ปรากฏใน repo ในพื้นที่เมื่อฉันพยายามกด GitHub ฉันยังคงได้รับข้อผิดพลาดเกี่ยวกับเรื่องนี้ …
272 git  github  git-push 


29
ร้ายแรง: ต้น EOF ร้ายแรง: ดัชนีแพ็คล้มเหลว
ฉัน googled และพบวิธีแก้ปัญหามากมาย แต่ก็ไม่ได้ผลสำหรับฉัน ฉันพยายามโคลนจากเครื่องหนึ่งโดยเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลซึ่งอยู่ในเครือข่าย LAN การรันคำสั่งนี้จากเครื่องอื่นทำให้เกิดข้อผิดพลาด แต่การรันคำสั่ง SAME clone โดยใช้ git: //192.168.8.5 ... ที่เซิร์ฟเวอร์มันโอเคและประสบความสำเร็จ ความคิดใด ๆ user@USER ~ $ git clone -v git://192.168.8.5/butterfly025.git Cloning into 'butterfly025'... remote: Counting objects: 4846, done. remote: Compressing objects: 100% (3256/3256), done. fatal: read error: Invalid argument, 255.05 MiB | 1.35 MiB/s fatal: early …
271 git  cygwin  msysgit 

8
พยายามแก้ไขจุดสิ้นสุดของบรรทัดด้วย git filter-branch แต่ไม่มีโชค
ฉันถูกกัดโดยปัญหาการสิ้นสุดบรรทัด Windows / Linux ด้วย git ดูเหมือนว่าผ่าน GitHub, MSysGit และแหล่งข้อมูลอื่น ๆ ทางออกที่ดีที่สุดคือให้ repos ในพื้นที่ของคุณตั้งค่าให้ใช้การสิ้นสุดบรรทัดแบบลินุกซ์ แต่ตั้งค่าไว้core.autocrlftrueไป แต่น่าเสียดายที่ฉันไม่ได้ทำเร็วพอดังนั้นตอนนี้ทุกครั้งที่ฉันดึงการเปลี่ยนแปลงปลายสายจะถูกบอร์ ฉันคิดว่าฉันพบคำตอบแล้ว ที่นี่แต่ฉันไม่สามารถทำงานให้ฉันได้ ความรู้เกี่ยวกับบรรทัดคำสั่ง Linux ของฉันมี จำกัด อย่างดีที่สุดดังนั้นฉันจึงไม่แน่ใจด้วยซ้ำว่าบรรทัด "xargs fromdos" ทำอะไรในสคริปต์ของเขา ฉันได้รับข้อความเกี่ยวกับไม่มีไฟล์หรือไดเรกทอรีดังกล่าวอยู่และเมื่อฉันจัดการเพื่อชี้ไปยังไดเรกทอรีที่มีอยู่มันบอกฉันว่าฉันไม่มีสิทธิ์ ฉันได้ลองกับ MSysGit บน Windows และผ่านเทอร์มินัล Mac OS X

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.