2009-12-14 65 views
29

對不起,這個可怕的,可怕的問題..但沒有辦法讓我不使用VSS。在Visual Source Safe 6.0中使用Git

我希望能夠在本地使用Git進行分支開發等,同時使用Visual Source Safe 6.我對Git的所有知識點的瞭解都是有限的,因爲我是最近的兌換。

問題:
我想能夠做的是在Git倉庫中工作。我希望做到這一點,並獲得所有這些將允許分支等的好東西。在我的一天結束時,或在其他需要的時刻,我希望能夠採取我正在做的任何工作,並將其放置進入主存儲庫,然後我將放入VSS。

理想的情況下,在一天的工作,我會得到VSS最新版本..承諾這混帳的開始..然後上的備用分支工作,把變化回主,當我需要承諾VSS。

是,我是一個相對的git的新手,什麼可能是完成這一任務的最好方式..最好的命令一起發佈/方法來設置此。

*注意:Source Safe需要檢出文件,然後才能對其進行更改。也許有一些工具/腳本可以用來幫助將這些變化推回到VSS中實現自動化?

+1

我知道它很臭。我只是尋找最簡單的方法來做到這一點,並保持一個很好的Git倉庫,並且每隔一段時間將我的更改推回VSS。 – 2009-12-14 22:12:19

+7

+1。我每天都感到同樣的痛苦:(爲什麼地球上曾經發明過VSS? – ereOn 2011-10-19 11:52:21

+0

不錯的問題+1,我和你現在都有的同樣頭疼 – cctan 2012-10-31 06:11:45

回答

8

您正在考慮的設置應該正常工作。對於git命令,只需檢查教程。

我使用(不使用VSS,但概念是相同的)工作流程是這樣的:從主

  • 結帳(即VSS)
  • 保持一個 「主幹」 的分支,是在同步與VSS
    • 將始終保持清潔
  • 開發分行從 「主幹」
  • 更新支VSS:
    • 切換到「trunk」
    • 使用VSS更新
    • git commit變化
    • 衍合那些從主幹分支
  • 爲推動改變VSS的分支:從開發分支
    • 推更改爲「主幹」
    • 切換到「主幹」
    • VSS提交更改
+2

如何解決VSS需要檢出文件的問題它知道該怎麼提交..同樣的道理,那些被添加的文件? – 2009-12-14 22:31:50

+1

嗯,你是對的,很難(我沒有特別考慮VSS),我可能會寫一個腳本來看看文件自上次同步(修改/添加/刪除)後發生了更改,並通過命令行VSS界面進行了適當的添加/檢出/刪除。 – orip 2009-12-14 23:05:35

+0

我認爲您是對的。要做到這一點,我必須構建一些腳本來照顧這些東西肯定會成爲一個挑戰 – 2009-12-14 23:27:22

2

任何人都堅持與VSS可能會發現下面的帖子有用的,如果你要處理的分支:

http://timwise.blogspot.com/2011/11/multiple-working-folders-for-git-on.html

它基本上描述了使用SysInternals' Junction獲得在Windows符號鏈接支持,然後共享物理分支文件夾之間的混帳回購協議VSS通過複製.git文件夾中的文件和sym-linking這些文件夾來強制您。

這裏是自動共享

0

我也陷入了這一點,我這樣做是不是有辦法其他人碰到我的VSS並且一直檢查所有文件,這意味着其他人無法做出貢獻,所以這對於每個人來說當然不是一個可行的解決方案。 我建議的解決方案是,您:

  • 從VSS
  • Chekout
  • 建立一個新分支上的功能
  • 完成工作的工作在你的功能
  • 切換到主分支
  • 更新最新VSS
    • 如果做了任何更改,請將您的分支重新綁定
  • 看到使用$ git diff --name-status master..branchName改變哪些文件(見Showing which files have changed between two revisions爲源本)
  • 退房使用VSS
  • 合併你的分支到主人的更改的文件(最好是刪除你的功能分支)
  • 承諾VSS

其中一些你可能能夠腳本化你的出路,但既然你最有可能使用M $(因爲你使用的是VSS),這不是我可以幫你的。

VSS的工作方式我認爲最好是儘量減少檢出VSS文件的時間,因此這是更好的方法。

請注意,更新文件可能會有一些問題,因爲VSS會自動設置未檢出文件的只讀標誌。此處可能需要解決方法。

相關問題