iT邦幫忙

0

Git 基礎+回朔功能

isthome 1 年前1211 瀏覽

各位好:

想請教GIT,
各位都是只用"一套"GIT軟體而已嗎?

假設我在win7環境上寫了一隻小程式(假設是用CI框架好了),
我可能先在http://codeigniter.org.tw/,
下載回CodeIgniter_2.2.6.zip,

假設放在路徑 d:/php/ci/test1

然後先簡單寫一段hello語法或是一些功能,
接著把整個路徑 d:/php/ci/test1都上傳到 linux主機上,
(透過FTP軟體-FileZilla),
路徑假設是/usr/share/html/ci_tset1
然後可能在瀏覽:http://113.2.1.2/ci\_tset1
就可以看到hello語法。

好了!以上描述結束,
就是很基礎的開發過程,
但...

1.GIT版本控制的"功能"在以上甚麼時候(或階段)會使用到??

linux主機用一套,
win7主機也要用一套??

2.我先前是下載CodeIgniter_2.2.6版本,
如果他後來又出了2.2.7版,

假設它是有修改之前核心或是多了幾隻核心程式(
\system\core\
Controller.php <=原本的、本次有修正程式
Controller2.php <=新版本增加的
Controller3.php <=新版本增加的
)

那麼我把這3隻Commit到linux主機上,
結果發現可能跟之前程式相衝突!!

那麼我是不是就可藉由回朔到上一次commit前的狀態,
也就是沒有這Controller2.php、Controller3.php,
以及Controller.php是舊版的的狀態??

1 個回答

4
aeolus0829
iT邦研究生 5 級 ‧ 1 年前

你這是用 ftp 的觀念在用 git

git 只用一套軟體嗎?
如果你要把資料上傳到遠端,那本地要一套,遠端也要一套

配合git的開發流程,步驟如下:

  1. 產生儲存庫 (git init)
  2. 把要版控的程式檔或資料夾加入 (git add)
  3. git commit:要把資料放進儲存庫,記得要commit(不是ftp上傳)
  4. 修改程式碼或新增程式檔
  5. 回到第二步

進階的步驟:

  1. 建立分支
  2. 在分支工作和測試你的測試碼
  3. 確認沒有 bug 就把分支合併回原始分支
  4. 回到第一步,直到程式可以 release 為止

追蹤:
git status 看目前有多少分支

如果是要配合遠端,基本步驟還是和上面一樣,只是預先把遠端的儲存庫配置好,然後在commit的時候,指定遠端的名稱

網路上有人整理中文git cheat,可以去找看看

以上的步驟全部都可以用gui,可以避免背一堆指令(雖然後期你也都會直接用指令),我自己是用tortoisegit

我比較建議你找一份適合的中文文件,邊看邊做,比較容易懂;之前光看文件我也是都似懂非懂,開始用後才知道好在哪
http://gogojimmy.net/2012/01/17/how-to-use-git-1-git-basic/
http://git-scm.com/book/zh/ch1-4.html

至少不要把git當成ftp來用,這樣並沒有發揮版控的功能

isthome iT邦新手 4 級 ‧ 1 年前 檢舉

哇!太感謝了~真是受益良多

我要發表回答

立即登入回答