❶ android中git是做什麼用的
Git是Linus大神的代碼管理工具,簡直說是開發者的超級福音,而作為個人開發者,自己購買伺服器或者github付費服務顯然不合算,那麼能不能在本地建立一個git倉儲來管理自己的代碼呢?答案是當然可以!
(安裝git什麼的就不說了,很簡單的apt-get install git-core就OK)
本例中倉儲設定在~/git_store/,而開發的代碼所在文件夾為~/git_example/
那麼先建立git_store
mkdir -p git_store
cd git_store
git init --bare
OK,現在這個倉庫已經建立好了,就等著往裡邊囤積代碼了。
強調的點是每個git clone下來的版本庫都是一個完整的版本庫,包括所有的歷史記錄和版本信息,不需要依賴網路,這點在使用的過程中你一定會有感觸,git不是蓋的。
git很快;
git易於使用,相對svn而言,我不覺得git比之簡單,但是總體來說git還是比較容易的,尤其是伺服器端的部署非常簡易。
本文僅僅介紹一下git的簡單使用。關於一些不常用的東西盡量會過濾掉。
/**
*這里列舉幾個常見的git命令,讓大家過過目
**/
1)基本操作
>git init //初始化版本庫
>git clone //克隆版本庫
>git add //添加新文件
>git commit //提交到本地版本庫
>git checkout //檢出(分支、標簽)
2)分支
>git branch //列出分支
>git branch -r //列出遠程分支
>git branch -a //列出所有分支
>git branch newBranch //基於當前分支創建新分支newBranch
>git branch -D branchName //刪除分支branchName
>git branch -d branchName //僅刪除已合並分支branchName
>git merge <--> //合並分支<br>>git tag
3)歷史
>git log //顯示全部歷史
>git log -p //顯示版本歷史,以及版本間的內容差異
>git log -5 //顯示最近的5個提交
>git log -5 -p //顯示最近的5個提交,以及版本間的內容差異
>...(很多很多參數...)
>git diff 112 115 //顯示112和115版本的差別
❷ git通俗一點是干什麼的
Git(讀音為/gɪt/)是一個開源的分布式版本控制系統,可以有效、高速地處理從很小到非常大的項目版本管理。也是Linus Torvalds為了幫助管理Linux內核開發而開發的一個開放源碼的版本控制軟體。
Torvalds 開始著手開發 Git 是為了作為一種過渡方案來替代 BitKeeper。
Git的功能特性:
從一般開發者的角度來看,git有以下功能:
1、從伺服器上克隆完整的Git倉庫(包括代碼和版本信息)到單機上。
2、在自己的機器上根據不同的開發目的,創建分支,修改代碼。
3、在單機上自己創建的分支上提交代碼。
4、在單機上合並分支。
5、把伺服器上最新版的代碼fetch下來,然後跟自己的主分支合並。
❸ git commit命令是做什麼用的
git commit主要是將暫存區里的改動給提交到本地的版本庫。
每次使用git commit 命令我們都會在本地版本庫生成一個40位的哈希值,這個哈希值也叫commit-id,commit-id在版本回退的時候是非常有用的,它相當於一個快照,可以在未來的任何時候通過與git reset的組合命令回到這里。
git commit-a-m"提交的描述信息"
git commit命令的-a選項可只將所有被修改或者已刪除的且已經被git管理的文檔提交倒倉庫中。如果只是修改或者刪除了已被Git 管理的文檔,是沒必要使用git add命令的。
git add.命令除了能夠判斷出當前目錄(包括其子目錄)所有被修改或者已刪除的文檔,還能判斷用戶所添加的新文檔,並將其信息追加到索引中。
git commit--amend對於已經修改提交過的注釋,如果需要修改,可以藉助 git commit --amend 來進行。
(3)git倉庫編譯的作用擴展閱讀
COMMIT(操作指令)
COMMIT命令用於把事務所做的修改保存到資料庫,它把上一個COMMIT或ROLLBACK命令之後的全部事務都保存到資料庫。
用途
使用COMMIT提交當前事務,使事務中執行的變更永久化,所有事務的更改都將為其他事務可見,而且保證當崩潰發生時的可持續性。
通過修改的表,查看事務期間所作的任何更改,但其他用戶不能看到所做的更改。
可以回滾ROLLBACK語句與事務過程中所做的任何更改。
可以使用此語句手動提交疑問在分布式的事務上。
可以使用此語句終止SET TRANSACTION語句的只讀事務。
參考資料
COMMIT-網路
❹ git和github是什麼有什麼作用最用通俗的語言
Git(讀音為/gɪt/。)是一個開源的分布式版本控制系統,可以有效、高速地處理從很小到非常大的項目版本管理。Git 是Linus Torvalds為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟體。
GitHub是一個面向開源及私有軟體項目的託管平台,因為只支持git 作為唯一的版本庫格式進行託管,故名GitHub。分布式相比於集中式的最大區別在於開發者可以提交到本地,每個開發者通過克隆(git clone),在本地機器上拷貝一個完整的Git倉庫。
GitHub於2008年4月10日正式上線,除了Git代碼倉庫託管及基本的 Web管理界面以外,還提供了訂閱、討論組、文本渲染、在線文件編輯器、協作圖譜(報表)、代碼片段分享(Gist)等功能。
(4)git倉庫編譯的作用擴展閱讀:
GitHub同時提供付費賬戶和免費賬戶。這兩種賬戶都可以創建公開或私有的代碼倉庫,但付費用戶支持更多功能。根據在2009年的Git用戶調查,GitHub是最流行的Git訪問站點。除了允許個人和組織創建和訪問保管中的代碼以外,它也提供了一些方便社會化共同軟體開發的功能,即一般人口中的社群功能,包括允許用戶追蹤其他用戶、軟體庫的動態,對軟體代碼的改動和bug提出評論等。
GitHub也提供了圖表功能,用於概觀顯示開發者們怎樣在代碼庫上工作以及軟體的開發活躍程度。
GitHub同時允許注冊用戶和非注冊用戶在網頁中瀏覽項目,也可以以ZIP格式打包下載。但是用戶必須注冊一個賬號然後才能進行討論、創建並編輯項目、參與他人的項目和代碼審查。
GitHub支持創建不限數量的公開倉庫,已付費用戶可以創建私有倉庫。2019年1月7日,GitHub宣布免費用戶也可以創建私有倉庫,私有倉庫數量不限但每個倉庫最多指定三個合作者。
❺ 請問什麼是Git
Git是現在主流的一種代碼託管技術。基本上大多數的公司都在使用Git進行協同開發。很多代碼託管平台也是通過Git來實現的。
Git可以對代碼進行版本控制以及分支管理等。它裡面主要包含遠程倉庫,克隆,本地倉庫,分支,提交,拉取等概念。其中遠程倉庫是指我們代碼存儲在伺服器的地方,並且是我們整個團隊中所有人都可以訪問的地方。
克隆則是指從遠程倉庫克隆到本地的過程。本地倉庫指的是我們開發人員從遠程倉庫克隆一份代碼之後,保存在我們本地的代碼,但是這個代碼只有克隆的代碼的開發人員可以看到。
分支分為主分支(master分支)和開發分支(develop分支),但我們開發的時候,基本不在master上面進行開發,而是我們自己從主分支或者開發分支中再分出來一條分支,然後我們就在這個分支上進行開發,裡面的每個分支都有自己的代碼。
提交是指在我們的代碼開發完成之後,需要將其修改並且說明修改的內容進行提交,但是此時的代碼只會提交到我們本地的倉庫,遠程倉庫此時還不會修改。
拉去的意思指在開發中,同一個項目可能是多人協作開發,那麼我們就需要將別人修改的代碼拉去並合並到自己的代碼中。
合並,顧名思義是指在我們自己的分支開發完成並且檢查沒有發現問題之後,就需要將我們的分支合並到主分支上面。
推送指由於之前的所有操作都是在我們本地進行的,遠程倉庫的代碼並沒有任何的改變,這就需要我們將本地的代碼推送到遠程的倉庫中,更新遠程倉庫代碼。
在開發中,我們可以合理地使用Git並且對它進行管理,當新版本遇到問題之後,我們就可能需要使用舊版本的代碼並將代碼進行回滾,以解決突發問題。
(5)git倉庫編譯的作用擴展閱讀
游戲編程的簡單介紹
游戲編程指利用計算機編程語言,如C編程語言、C++、java等,編寫計算機、手機或游戲機上的游戲。 目前流行的游戲編程語言為C++編程語言,游戲編程介面為DirectX9.0、OpenGL和SDL(Simple DirectMedia Layer)等。現在手機上玩的游戲分為Android與IOS兩種平台,分別是用java和object-c(或swift)。當然時下也流行一些跨平台的編程引擎,例如cocos2d-x、unity 3D等。
❻ git的本地倉庫幹嘛用的
git本地倉庫可以用於開發,在本地開發完,驗證好代碼的功能正確後,就可以上傳到遠程git倉庫。
❼ git是什麼
Git(讀音為/gɪt/)是一個開源的分布式版本控制系統,可以有效、高速地處理從很小到非常大的項目版本管理。也是Linus Torvalds為了幫助管理Linux內核開發而開發的一個開放源碼的版本控制軟體。
Torvalds 開始著手開發 Git 是為了作為一種過渡方案來替代 BitKeeper。
功能:
1、從伺服器上克隆完整的Git倉庫(包括代碼和版本信息)到單機上。
2、在自己的機器上根據不同的開發目的,創建分支,修改代碼。
3、在單機上自己創建的分支上提交代碼。
4、在單機上合並分支。
5、把伺服器上最新版的代碼fetch下來,然後跟自己的主分支合並。
6、生成補丁(patch),把補丁發送給主開發者。
7、看主開發者的反饋,如果主開發者發現兩個一般開發者之間有沖突(他們之間可以合作解決的沖突),就會要求他們先解決沖突,然後再由其中一個人提交。如果主開發者可以自己解決,或者沒有沖突,就通過。
❽ git的工作原理
git的工作總共分四層,其中三層是在自己本地也就是說git倉庫,包括了工作目錄、暫存區和本地倉庫。工作目錄就是我們執行命令git init時所在的地方,也就是我們執行一切文件操作的地方;暫存區和本地倉庫都是在.git目錄下,因為它們只是用來存數據的。遠程倉庫在中心伺服器,也就是我們做好工作之後推送到遠程倉庫,或者從遠程倉庫更新下來最新代碼到本地。Git所存儲的都是一系列的文件快照,然後git 來跟蹤這些文件快照,發現哪個文件快照有變化他就會提示你需要添加到暫存區或是提交到本地倉庫來保證你的工作目錄是干凈的。
這個要怎麼理解呢?git中的文件有兩種狀態,一種是被跟蹤的,也就是提交到本地倉庫的文件,因為本地倉庫要保管它們當然要跟蹤他們,對他們負責,還有一種就是未被跟蹤的。那麼當我們添加新的文件時,他不是被跟蹤的,因為本地倉庫裡面沒有這個文件,他是外來的,本地倉庫目前還不需要對他們負責。但是如果是對倉庫已經存在的文件進行修改,那麼這些文件就是被跟蹤的文件,就可以通過git status查看他們的狀態來進行相應的操作。當然我們也可以生成一個.gitignore文件,裡面指定要忽略的文件類型,然後這些文件就不會被跟蹤,不管怎麼改變他們,git status都不會提示你需要做什麼操作。
所以當我們在工作目錄中進行文件操作後,要先添加到暫存區,然後再將暫存區中剛添加的文件快照提交到本地倉庫,然後再將本地倉庫的最新狀態文件快照推送到遠程倉庫。這個文件快照其實就是各個文件在被添加到暫存區時的狀態,就和照相的一樣,留下每個不同時刻的快照,方便以後查詢,而git存儲的就是這些一系列的快照。說到這個快照就要說說git的對象了。
Git對象
在.git-》Objects文件夾是一個個的git對象,是38位的哈希值,這樣就意味著沒有兩個相同的對象名。
從根本上講,git是一套內容定址的文件系統,它存儲的也是key-value鍵值對,然後根據key值來查找value的,說到定址就會想到指針吧,不錯,git也是根據指針來定址的,這些指針就存儲在git的對象中。Git一共有四種對象,commit對象,tree對象和blob對象和tag對象,這里可以理解tag是commit的別名,下面便是這三個對象:
每個目錄都創建了「tree」對象, 每個文件都創建了一個對應的「blob」對象。最後有一個「commit」對象來指向根「tree」對象,這樣我們就可以追蹤項目每一項提交內容。
這個blob對象對應的就是文件快照中那些發生變化的文件內容,而
tree對象則記錄了文件快照中各個目錄和文件的結構關系,它指向了被跟蹤的快照,
commit對象則記錄了每次提交到本地倉庫的文件快照,
從在開發過程中,我們會提交很多次文件快照,那麼第一次提交的內容會用一個commit來記錄,這個commit 沒有指針指向上一個commit對象,因為沒有上一個commit,他是第一個,當第二次提交時,又會有另外一個commit對象來記錄,那麼這次commit對象中就會有一個指針指向上一次提交後的commit對象,經過很多次提交後就會有很多的commit對象,它們組成了一個鏈表,當我們要恢復哪個版本的時候,只要找到這個commit對象就能恢復那個版本的文件。而我們所謂的HEAD對象其實就是指向最近一個提交的commit對象,也就是最後一個commit對象。
❾ git的分支有什麼用啊
先說分支的作用:分支不是GIT的專利,早在CVS時代就有了。分支對於團隊來說作用太大了。比如說一個項目現在是1.0版,那麼開發團隊可能要同時進行1.1版和2.0版的開發,這樣代碼就會出現較大分歧。這時候就需要用到分支了,不同的任務組在不同的分支上開發,互相之間不會影響。再比如說,需要向項目中添加一個新功能,一般的團隊都不會直接在主分支上修改,都會新建一個分支,在上面更改代碼。這樣做的好處就是保證主線代碼的完整性和可用性,也就是說,主線上都是穩定的代碼,可以直接拿來發布的。
再說說分支在GIT上的特點:GIT的技術可以說是非常強大,說一切開發都依賴於分支一點都不過分。一般項目的master分支都是穩定的代碼,可以直接發布或者被項目之外的人使用。新特性和BUG修改都在不同的分支上進行開發和測試。這樣規范了整個軟體的開發流程。分支之間的互不影響這種特性可以增加團隊合作的效率。GIT分支的另外一個重要特性就是可以合並不同軟體倉庫(fork)的分支。大體就是:開發團隊有一個主軟體倉庫,開發者可以fork這個倉庫,相當於克隆了一個私有的軟體倉庫,然後開發者就可以在自己的軟體倉庫中建立分支並開發測試,測試完畢之後,可以向主軟體倉庫提交merge request,這樣新開發的特性就會被合並到主軟體倉庫的某個分支中。這種特性極大地推動了開源項目,多年前參加開源項目都是神話,自從GIT出現後,每個人都可能成為開源項目的貢獻者,就是基於這種特性(請參照Github的pull request,和merge request是同一個東西)。
❿ git為什麼本地倉庫
我們都知道,使用git的好處是可以很好地對項目版本進行控制。
我們可以很清楚地看到修改了哪些代碼,並可以恢復到我們想要的版本。
使用的話,平常我們都是先將改動的代碼提交到本地倉庫,再推送到遠程倉庫。
那如果我們不需要推送到遠程倉庫,只需要在本地倉庫進行管理呢?
最近就在做項目時,需要建立本地倉庫。
於是上網查了下資料,找到了建立本地git倉庫的方法,下面簡單描述一下:
1、在項目的根目錄下,使用git init 命令創建一個版本庫。執行過後會發現根目錄下多了一個.git的目錄。
其中包括許多的空文件。比如:
config # 項目的配置信息
description # 項目的描述信息
HEAD # 項目當前在哪個分支的信息
hooks/ # 默認的「hooks」 腳本文件
index # 索引文件,git add 後把要添加的項暫存到這里
info/ # 裡面有一個exclude文件,指定本項目要忽略的文件 #
logs/ # 各個refs的歷史信息
objects/ # 這個目錄非常重要,裡面存儲都是Git的數據對象
2、本地倉庫創建成功後,使用git add 命令。把當前目錄下的所有文件全部添加到暫存區。
3、再使用git commit 命令,將文件提交到本地倉庫。
至此,本地倉庫創建成功。當本地的源文件改動時,只需要再添加、提交到本地倉庫即可。
使用git log 命令,可以看出有哪些內容被提交了。
甚至可以恢復到想要恢復的版本,這樣及再也不用擔心代碼不能恢復的情況了。