git使用快速入門

2022-02-21 20:05:15 字數 3542 閱讀 9395

目錄git是個了不起但卻複雜的源**管理系統。它能支援複雜的任務,卻因此經常被認為太過複雜而不適用於簡單的日常工作。

建立乙個遠端的空**庫(在bitbucket上)

在本地**庫新增乙個專案

在分支上開發新功能

a) 保留新功能 或者 b) 丟棄它們

也許,回到某個早先的時間點

將本地**庫推送到遠端**庫

在另一台機器上取得遠端**庫

在大多數*nix系統(linux、os x)上,git已經被安裝了. 或者使用

yum instal git 以及 apt-get install
你可以使用 github 或者 bitbucket,coding ,gitee 等建立乙個**庫

替換為你自己的使用者名稱和郵箱需要引號

git config --global user.name "your_username"

git config --global user.email "[email protected]"

進入專案的根目錄執行以下命令,例如my_site資料夾

cd my_site

git init

git會在my_site資料夾內建立乙個名為.git的隱藏資料夾,那就是你的本地**庫。

我們現在需要命令git我們需要載入(stage)所有專案檔案。傳送:

git add .

最後的「.」符號的意思是「所有檔案、資料夾和子資料夾」。假如我們只想要把特定檔案新增到源**控制中去,我們可以指定它們:

git add "filename"

用「initial commit」來作為第乙個提交的注釋。

git commit -m "initial commit"

git status

建立分支是你建立**的獨立版本的動作,獨立於你的主幹分支。預設地,每次你提交到git的檔案都會被儲存到「master(主幹)」分支。

你想要向專案裡新增乙個功能,但你想要能夠回滾到現在版本,以防出現差錯,或者你決定要放棄這個功能。這就是你建立分支的時候了

建立並同時切換到你新建的分支。

git checkout -b new_feature

或者,你可以先建立乙個分支然後手動切換,就像這樣:

git branch new_featuregit checkout new_feature

要看你現在專案下所有的分支。

git branch

你同時可以有多個分支,甚至可以從乙個分支上再建立乙個分支

當你對你的新功能滿意了的時候,你想要把它加到主幹分支上。當你在你的新功能分支上時,你首先需要載入(stage)並且提交你的檔案:

git add .git commit -m "adds my new feature"

# 然後你移到你的主幹分支:

git checkout master

# 像這樣合併:

git merge new_feature

如果你打算丟棄你在分支裡做的修改,你首先需要載入(stage)你的檔案並且在分支裡提交:

git add .git commit -m "feature to be discarded"

# 然後,你移到主幹分支:

git checkout master

現在,你的**處於你建立分支之前的狀態了。

如果你要把你的分支合併到主幹分支,從主幹(master)分支上執行:

git branch -d new_feature

假如修改已經合併了,它只會刪除分支。假如分支沒有合併,你會得到乙個錯誤資訊。刪除乙個未合併的分支(通常你不想保留的修改),你需要傳送一樣的命令附帶乙個大寫d。意思是「強制刪除分支,無論如何我不想要它了。」

git branch -d new_feature

在某些時候,你可能想要回到之前的**版本。首先,你需要找到你想回到哪個版本。要看所有的完成了的提交。

git log

輸出你的提交的歷史記錄,像這樣:

commit ca82a6dff817ec66f44342007202690a93763949author: your_username [email protected]: mon nov 4 12:52:11 2013 -0700 changes the frontpage layout
如果你想回到「adds my new feature」這個提交,簡單地用提交的id做簽出(checkout)(我通常只用到id開頭的9個字元)

git checkout 085bb3bcb

你也可以簽出到乙個新的分支,像這樣:

git checkout -b my_previous_version 085bb3bcb

只是別太瘋狂了!你的分支越複雜,就越難確定你真正在做什麼。

在第一次你想推送乙個本地**庫到遠端**庫時,你需要把它新增到你的專案配置裡。像這樣做:

git remote add origin "url"git push origin master

在你的**庫想要拷貝到的資料夾下執行

# 從遠端**庫上取得它最新的版本

git pull origin mastergit允許你為你常用的命令建立快捷方式(別名)。例如,如果你不想每次都輸入git commit -m 「some comment」,而是輸入git c 「some comment」,你可以向你的git全域性配置裡新增乙個別名來實現,像這樣:

git config --global alias.c 'commit -m'

別名列表:

git config --global alias.c 'commit -m'

git config --global alias.co 'checkout'

git config --global alias.cob 'checkout -b'

git config --global alias.br 'branch'

git config --global alias.m 'merge'

git config --global alias.a 'add .'

git config --global alias.s 'status'

git config --global alias.dbr 'branch -d'

Git 快速入門

一種分布式版本控制系統。版本庫是集中存放在 伺服器的,而幹活的時候,用的都是自己的電腦,所以要先從 伺服器取得最新的版本,然後開始幹活,幹完活了,再把自己的活推送給 伺服器。伺服器就好比是乙個圖書館,你要改一本書,必須先從圖書館借出來,然後回到家自己改,改完了,再放回圖書館。集中式版本控制系統最大的...

git快速入門

我們的 倉庫是用gitlab來管理的,要檢視自己能訪問哪些倉庫,以及倉庫的位址,請先熟悉一下gitlab系統的使用 gitlab入門 以下教程假設你已經知道如何在系統開啟終端視窗,並知道如何輸入shell命令。現在開啟終端,然後繼續。在提交 之前必須設定自己的使用者名稱和email git conf...

git快速入門

看到這裡,相信你已經能夠回滾遠端分支的版本了,那麼你也許會問了,回滾公共遠端分支和回滾自己的遠端分支有區別嗎?答案是,當然有區別啦。乙個顯而易見的問題 如果你回退公共遠端分支,把別人的提交給丟掉了怎麼辦?下面來分析 假如你的遠端master分支情況是這樣的 a1 a2 b1 其中a b分別代表兩個人...