1. 程式人生 > 實用技巧 >根據CSV檔案生成ImageFolder格式資料集,並按比例劃分訓練集驗證集

根據CSV檔案生成ImageFolder格式資料集,並按比例劃分訓練集驗證集

一,什麼是Git?

Git 是一個開源的分散式版本控制系統,用於敏捷高效地處理任何或小或大的專案。

Git 是 Linus Torvalds 為了幫助管理 Linux 核心開發而開發的一個開放原始碼的版本控制軟體。

Git 與常用的版本控制工具 CVS, Subversion 等不同,它採用了分散式版本庫的方式,不必伺服器端軟體支援。

二,Git 和 SVN 的區別

Git 不僅僅是個版本控制系統,它也是個內容管理系統(CMS),工作管理系統等。

Git 與 SVN 區別點:

  • 1、Git 是分散式的,SVN 不是:這是 Git 和其它非分散式的版本控制系統,例如 SVN,CVS 等,最核心的區別。

  • 2、Git 把內容按元資料方式儲存,而 SVN 是按檔案:所有的資源控制系統都是把檔案的元資訊隱藏在一個類似 .svn、.cvs 等的資料夾裡。

  • 3、Git 分支和 SVN 的分支不同:分支在 SVN 中一點都不特別,其實它就是版本庫中的另外一個目錄。

  • 4、Git 沒有一個全域性的版本號,而 SVN 有:目前為止這是跟 SVN 相比 Git 缺少的最大的一個特徵。

  • 5、Git 的內容完整性要優於 SVN:Git 的內容儲存使用的是 SHA-1 雜湊演算法。這能確保程式碼內容的完整性,確保在遇到磁碟故障和網路問題時降低對版本庫的破壞。

三,安裝Git

Git 各平臺安裝包下載地址為:

http://git-scm.com/downloads

四,用法

  1,配置 

Git 提供了一個叫做 git config 的工具,專門用來配置或讀取相應的工作環境變數。

這些環境變數,決定了 Git 在各個環節的具體工作方式和行為。這些變數可以存放在以下三個不同的地方:

/etc/gitconfig 檔案:系統中對所有使用者都普遍適用的配置。若使用 git config 時用 --system 選項,讀寫的就是這個檔案。
~/.gitconfig 檔案:使用者目錄下的配置檔案只適用於該使用者。若使用 git config 時用 --global 選項,讀寫的就是這個檔案。
當前專案的 Git 目錄中的配置檔案(也就是工作目錄中的 .git/config 檔案):這裡的配置僅僅針對當前專案有效。
每一個級別的配置都會覆蓋上層的相同配置,所以 .git/config 裡的配置會覆蓋 /etc/gitconfig 中的同名變數。 在 Windows 系統上,Git 會找尋使用者主目錄下的 .gitconfig 檔案。主目錄即 $HOME 變數指定的目錄,一般都是 C:\Documents and Settings\$USER。 此外,Git 還會嘗試找尋 /etc/gitconfig 檔案,只不過看當初 Git 裝在什麼目錄,就以此作為根目錄來定位。

  2,使用者資訊

$ git config --global user.name "yunhgu"
$ git config --global user.email [email protected]

  3,檢視配置資訊

$ git config --list
http.postbuffer=2M
user.name=yunhgu
[email protected]

單獨查
$ git config user.name
runoob

  4,工作流程

一般工作流程如下:

克隆 Git 資源作為工作目錄。
在克隆的資源上新增或修改檔案。
如果其他人修改了,你可以更新資源。
在提交前檢視修改。
提交修改。
在修改完成後,如果發現錯誤,可以撤回提交併再次修改並提交。

  5,git建立倉庫

使用當前目錄建立倉庫
git init
使用指定目錄建立倉庫
git init dirname

$ git add *.c
$ git add README
$ git commit -m '初始化專案版本'
以上命令將目錄下以 .c 結尾及 README 檔案提交到倉庫中。

  6,clone

我們使用 git clone 從現有 Git 倉庫中拷貝專案
git clone <repo>
如果我們需要克隆到指定的目錄,可以使用以下命令格式:
git clone <repo> <directory>
  • repo:Git 倉庫。
  • directory:本地目錄。

  比如,要克隆 Ruby 語言的 Git 程式碼倉庫 Grit,可以用下面的命令:

$ git clone git://github.com/schacon/grit.git
執行該命令後,會在當前目錄下建立一個名為grit的目錄,其中包含一個 .git 的目錄,用於儲存下載下來的所有版本記錄。

如果要自己定義要新建的專案目錄名稱,可以在上面的命令末尾指定新的名字:
$ git clone git://github.com/schacon/grit.git mygrit

  7,常用命令

Git 常用的是以下 6 個命令:git clone、git push、git add 、git commit、git checkout、git pull
一個簡單的操作步驟:

$ git init    
$ git add .    
$ git commit  

  8,提交與修改

命令    說明
git add    新增檔案到倉庫
git status    檢視倉庫當前的狀態,顯示有變更的檔案。
git diff    比較檔案的不同,即暫存區和工作區的差異。
git commit    提交暫存區到本地倉庫。
git reset    回退版本。
git rm    刪除工作區檔案。
git mv    移動或重新命名工作區檔案。

  9,日誌

git log    檢視歷史提交記錄
git blame <file>    以列表形式檢視指定檔案的歷史修改記錄

   10,遠端操作

命令    說明
git remote    遠端倉庫操作
git fetch    從遠端獲取程式碼庫
git pull    下載遠端程式碼併合並
git push    上傳遠端程式碼併合並

   11,分支管理

建立分支命令:git branch (branchname)
切換分支命令:git checkout (branchname)
合併分支命令: git merge(branchname)
列出分支:
git branch
刪除分支:
git branch -d (branchname)

    12,新增遠端倉庫

git remote add [shortname] [url]