很久之前就想在筆電上面搞個 git server 讓我存放我的程式碼
我的需求是:筆電上面有個主要管理的資料夾可以讓筆電&桌機連上去拉程式下來,寫完再丟回去
很簡單吧~
不過之前一直看不懂要怎樣架 Orz
大概是文件看不夠多,所以拖到現在才完成...
首先我筆電上面已經有我要用 git 管理的 project 了,並且安裝了"git-core"套件。Ubuntu 底下可以直接利用apt-get安裝
一開始是 server 端處理
我額外的建立一個資料夾"git"作為管理所有 project 的存放點,並拉了一個 symbol 到根目錄
之後在"git"資料夾裡面建立 <project_name>.git 的資料夾,<project_name>當然是填上你自己的project name
進去 .git ,執行 "git --bare init"
這個步驟在你每次要增加新的管理 project 都要做一次
然後進行cline端處理,就是把你的 project 丟上去
進入你的 project 資料夾,依序執行:
"git init"
"git add <你要被管理的檔案>"
"git commit -m '<你要加的註解>' "
"git remote add origin <協定+主機位置>[/<path>]/<project_name>.git"
註:如果server/cline在同一台,<協定+主機位置>可以填"file:///",以ssh連線就填"ssh://<user id>@<host name>"。<path>是 <project_name>.git 的所在位置,這邊當然是"/git"
"git push origin master"
這樣就完成了
最後試試看從別的地方拉下整個 project:
"git clone <協定+主機位置>[/<path>]/<project_name>.git"
大致上OK了
我是很努力輸入密碼的人啦...如果你用ssh登入時不想輸入密碼,那自己去做相關步驟吧~
另外,以Windows作為Client端平台的人可以用TortoiseGit
參考資料:
Debian Linux 架設使用 SSH 存取 的 Git Server
git-clone(1) Manual Page
2010年3月19日 星期五
2010年1月3日 星期日
修復GRUB2:當Win7 WinXP ubuntu9.10湊在一起
繼上一篇之後,我的舊電腦也安裝了ubuntu 9.10...
問題來了
Win7的boot loader蓋掉了原本放在sda的XP舊式boot loader後,再用ubuntu 9.10的grub2蓋一次
變成每次開機會先進入grub2選Win7的boot loader or ubuntu 9.10,再從Win7的boot loader選擇要進入Win7還是XP,就...一整個不爽啦~(翻桌)
於是趁著Win7的boot loader進入XP會找不到XP的boot loader時,來改掉這樣不合理的開機流程...
先來個使用前硬碟配置:
STEP1:還原XP的boot loader
就只是把XP安裝光碟放進去,進入修復主控台,執行"fixboot"跟"fixmbr"而已
STEP2:拔掉sda的電源線
這名奇妙的重要!因為XP、VISTA跟Win7的安裝光碟實在強大!明明在BIOS裡關掉的硬碟還是會被抓出來...
這步沒做,上一步就白做了,Win7的boot loader會再次蓋掉sda的XP boot loader,而不是放在sdb
STEP3:還原Win7的boot loader
一樣只是把Win7的安裝光碟丟進去,選修復模式,然後他會偵測到你的Win7沒有boot loader...廢話!不然我們前兩步就白做了...
於是就交給它修復,然後重開機一次後,一樣進入安裝光碟,一樣選修復模式。這次不會偵測到錯誤,會直接進入選單,選"修復錯誤"之類的...我懶得為了打文章再放Win7片子跑一次,反正不論是中文、英文、日文的安裝片,都會在地一個選項就是了
STEP4:還原GRUB2統整所有boot loader的地位
首先,請記得把sda的電源線接回去...
之後放入ubuntu 9.10的安裝光碟暨Live CD
然後參照這篇教學
進行到第9步...
嗯...囧了。try了n次都一樣,於是試了下面指令
OK了!?不過變成/boot底下還有一個boot/grub...
於是我就自作主張的把/boot/boot/grub/底下的東西COPY到/boot/grub底下,再跑一次
這次也OK了...只是目前還抓不到其他boot loader
STEP5:重製GRUB2開機選單
雖然GRUB2回來了,不過執行update-grub還是抓不到其他的boot loader
所以我們這次要重開機,經過只有ubuntu的GRUB2選單後,終於又回到了熟悉的ubuntu桌面
這時我們一樣打開終端機,執行update-manager,終於又抓到其他的boot loader了~
重開機檢查,確認都有出現在選單上了
可喜可賀,可喜可賀
STEP6:收工
再來個使用後硬碟配置:
註:GRUB2仍然把Win7識別為VISTA...仔細看後面附帶"(Loader)"
可見由於VISTA跟Win7的boot loader是一樣的,所以想當然耳...
看不爽的話只好自己手動修改grub.cfg
問題來了
Win7的boot loader蓋掉了原本放在sda的XP舊式boot loader後,再用ubuntu 9.10的grub2蓋一次
變成每次開機會先進入grub2選Win7的boot loader or ubuntu 9.10,再從Win7的boot loader選擇要進入Win7還是XP,就...一整個不爽啦~(翻桌)
於是趁著Win7的boot loader進入XP會找不到XP的boot loader時,來改掉這樣不合理的開機流程...
先來個使用前硬碟配置:
- sda:
- sda1:WinXP主分割區,NTFS,grub2導引 + XP boot loader + Win7 boot loader
- sda2:Linux SWAP分割區
- sda3:ubuntu 9.10 根目錄分割區,ext4,grub2 boot loader
- sdb:Win7主分割區,NTFS
- sdc:DATA分割區,NTFS
STEP1:還原XP的boot loader
就只是把XP安裝光碟放進去,進入修復主控台,執行"fixboot"跟"fixmbr"而已
STEP2:拔掉sda的電源線
這名奇妙的重要!因為XP、VISTA跟Win7的安裝光碟實在強大!明明在BIOS裡關掉的硬碟還是會被抓出來...
這步沒做,上一步就白做了,Win7的boot loader會再次蓋掉sda的XP boot loader,而不是放在sdb
STEP3:還原Win7的boot loader
一樣只是把Win7的安裝光碟丟進去,選修復模式,然後他會偵測到你的Win7沒有boot loader...廢話!不然我們前兩步就白做了...
於是就交給它修復,然後重開機一次後,一樣進入安裝光碟,一樣選修復模式。這次不會偵測到錯誤,會直接進入選單,選"修復錯誤"之類的...我懶得為了打文章再放Win7片子跑一次,反正不論是中文、英文、日文的安裝片,都會在地一個選項就是了
STEP4:還原GRUB2統整所有boot loader的地位
首先,請記得把sda的電源線接回去...
之後放入ubuntu 9.10的安裝光碟暨Live CD
然後參照這篇教學
進行到第9步...
| $sudo grub-install /dev/sda grub-probe: error: cannot find a grub drive for /dev/sda3. Check your device.map ... |
| $sudo grub-install --root-directory=/boot /dev/sda |
於是我就自作主張的把/boot/boot/grub/底下的東西COPY到/boot/grub底下,再跑一次
| $sudo grub-install /dev/sda |
STEP5:重製GRUB2開機選單
雖然GRUB2回來了,不過執行update-grub還是抓不到其他的boot loader
所以我們這次要重開機,經過只有ubuntu的GRUB2選單後,終於又回到了熟悉的ubuntu桌面
這時我們一樣打開終端機,執行update-manager,終於又抓到其他的boot loader了~
重開機檢查,確認都有出現在選單上了
可喜可賀,可喜可賀
STEP6:收工
再來個使用後硬碟配置:
- sda:
- sda1:WinXP主分割區,NTFS,grub2導引 + XP boot loader
- sda2:Linux SWAP分割區
- sda3:ubuntu 9.10 根目錄分割區,ext4,grub2 boot loader
- sdb:Win7主分割區,NTFS,Win7 boot loader
- sdc:DATA分割區,NTFS
註:GRUB2仍然把Win7識別為VISTA...仔細看後面附帶"(Loader)"
可見由於VISTA跟Win7的boot loader是一樣的,所以想當然耳...
看不爽的話只好自己手動修改grub.cfg
訂閱:
文章 (Atom)