1. 程式人生 > >Gitlab和SourceTree組合實現版本控制

Gitlab和SourceTree組合實現版本控制

1)GitSourceTreeGitlab三者之間關係

簡單來說,Gitlab是儲存在遠端的程式碼,git是原生代碼與遠端程式碼溝通的橋樑,但git是完全命令列模式,而SourceTree則是git的介面化的Git客戶端。

2)建立公鑰和私鑰

==>建立公鑰和私鑰的目的

使用git bash命令生成gitlab服務端和本地git相互傳輸時所需要校驗的公鑰和私鑰,公鑰用來配置gitlab,私鑰用來配置SourceTree

==>建立公鑰和私鑰的方法

->設定gituser.nameuser.email

$ git config --global user.name "xxx

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

->生成SSH金鑰過程

A.開啟git bash(直接在桌面右鍵(只要安裝了git就有)),輸入cd ~/.ssh

 如果出現的是上面的介面,則表示已經建立了SSH金鑰,但是如果出現的是”no file”的字樣,則表示的是還沒有建立相應的SSH金鑰。

B.生成金鑰

$ ssh-keygen -t rsa -C “[email protected]

這是最核心的命令,注意點:ssh-keygen”中間是沒有空格的,輸入該條命令後,大約要按34次回車,中間如果要求要輸入相應的密碼,不用管,直接回車就行。

如果經過34次回車後,出現上面的介面,則表示的是SSH金鑰建立成功。

==>在電腦上找到建立好的SSH金鑰

我所建立的SSH金鑰在

注意:當我們建立完成SSH金鑰後,只有兩個檔案,分別是id_rsaid_rsa.pub兩個檔案,其中id_rsa是私鑰,是用來配置SourceTree的,而id_rsa.pub是公鑰,是用來配置Gitlab的。

3)Gitlab上配置公鑰

開啟Gitlab(網址開啟,輸入使用者名稱和密碼)

選擇最後的”Profile Settings”,出現如下介面

點選“SSH Keys”,出現如下介面

在這個介面需要填寫的就是Key(Title是可以隨便寫的

),而這裡的Key就是要填寫的是我們剛剛生成的SSH金鑰的公鑰,也就是id_rsa.pub檔案中的內容,直接使用記事本開啟,複製裡面的內容到Key中,Title隨便寫點後,點選Add Key後,就會在該頁面的下面出現

表示此時GItlabSSH公鑰已經配置完成。

4)SourceTree上配置私鑰

開啟SourceTree,選擇工具-->選項-->一般,出現如下介面

注意,這個頁面的下半部分還有內容,在配置SourceTree的時候,該頁面下半部分的內容是不變的,所有需要操作都在上面的截圖中。

如果開啟該頁面,“預設使用者資訊”兩項沒有填寫的,先填寫(注意全名)。

最核心的部分就是SSH客戶端配置”,先不要管“SSH金鑰本地路徑”,先將”SSH客戶端選擇成OpenSSH一項(注意必須是這項)。當我們選擇了OpenSSH後,此時“SSH金鑰”就會自動的定位到本電腦上的SSH金鑰的路徑位置,如果沒有定位,則直接自己填寫。

5)GitlabSourceTree聯合使用

==>Gitlab上建立新的倉庫

點選Project-->New Project後出現如下介面:

輸入相應的Project PathProject nameProject descriptionVisibility level四項後,點選“Create project”後,就會出現如下介面

在新建立的倉庫專案中,有幾點需要注意:一是新建的倉庫地址(在新建立的空倉庫時,就是使用的是SSH協議),二是在下面提供了該Gitlab下關於“你”的相應的使用者資訊,如果不知道使用者名稱和郵箱是不能在本地電腦上建立SSH金鑰的。到達此不後,我們所要關心的已經不是使用者名稱和郵箱了,真正要關心的則是新倉庫的地址(這個倉庫地址才是核心)。

==>SourceTree建立新倉庫

點選左上角的“克隆/新建”,選擇“建立新倉庫”,這裡需要填寫的內容有“目標路徑”、“名字”兩項。

“目標路徑”:首先現在本電腦上建立一個資料夾,該檔案主要是用來存放你需要將其存放到Gitlab上的(這裡也可以是網路地址,一般是要將本地電腦上的檔案專案釋出到Gitlab上,我建議新建一個資料夾是為了安全考慮,如果不新建資料夾,也可以直接在專案檔案上直接操作也可)。

點選“建立”後,出現如下介面:

出現如下介面,不要管。

我們現在bb資料夾中,隨便建立一個文字文件(也就是一個隨便的檔案)。

此時點選左上角的“提交”後,出現如下介面:

很顯然,aa.txt是還沒有進行暫存的,當我們將“為暫存檔案”前面打鉤後,出現如下介面:

也就是aa.txt變成了“已暫存檔案”。點選左上角“提交”後,下面的編輯內容隨便輸入一下(這是表示的是修改描述資訊)。

點選提交後,此時就會出現如下介面:

很明顯的是,已經將aa.txt提交到了master主分支了,在分支一項中出現了master

==>SourceTree建立遠端倉庫

點選右上角的“設定”:

不要出點擊“遠端”,是不會顯示相應內容的,點選“設定”後,出現如下介面:

點選“新增”後:

遠端名稱:可以隨便輸入,也可以使用預設遠端(在預設情況下,是origin;

URL/路徑(核心):該路徑就是Gitlab上剛建立的新倉庫的地址([email protected]:gaozhaoxuan/qqqqq.git),該地址一定要填對。點選“確定”後,就會出現的介面:

在遠端選項上,就會出現剛剛建立的遠端倉庫。

6)SourceTree上實現提交本地檔案和獲取遠端Gitlab檔案

==>SourceTree將本地檔案推送到Gitlab

點選“推送”後:

點選“確定”後,就直接將其推送到Gitlab相應的新建的倉庫地址下面。

這個”55M”就表示的是,已經將檔案從SourceTree推送到Gitlab上了。

==>Gitlab上將專案拉取(pull)下來

直接點選“拉取”,選擇相應的分支就可以拉取了。

相關推薦

GitlabSourceTree組合實現版本控制

1)Git、SourceTree和Gitlab三者之間關係 簡單來說,Gitlab是儲存在遠端的程式碼,git是原生代碼與遠端程式碼溝通的橋樑,但git是完全命令列模式,而SourceTree則是git的介面化的Git客戶端。 2)建立公鑰和私鑰 ==>建立公鑰和私鑰

基於GitLab與Git Extensions搭建版本控制工具

基本 cmd img html nat 需求 無法 spa hang 1.背景   大家知道GitHub是現在非常流行的代碼托管工具,但是如果有些項目不想開源的話,則需要付費,因此萌生了自己搭建一個Git的版本控制工具,供內網使用。GitLab則是個好的選擇,但是GitL

CentOS 下 Apache + Subversion 實現版本控制

apr-util tex quest 進入 httpd utl 初學 md5 stat 首先要說明一點的是Apache並不是必須安裝的,如果你只用在CentOS下本地實現版本控制的話,否則你至少要選擇一種服務器與SNV配合使用才能實現遠程版本控制,比較推崇使用Apache,

【滑稽】用 blog 實現版本控制

隨筆 一派胡言 黑科技 版本控制 函數式 (實現方法和scheme中的鏈表思想幾乎完全相同——不過版本控制本身就是一堆指針,參考 鏈接:git教程 - 廖雪峰的官方網站)  博客提供兩個接口:寫博客,可以在博客裏放任何內容不限量評論評論可以刪除  博客常常可以修改。但是這個功能有副作用:修

全排列組合實現

.html 有意義 per more tro 包含 方法 循環 -s 記得@老趙之前在微博上吐槽說,“有的人真是毫無長進,六年前某同事不會寫程序輸出全排列,昨天發郵件還是問我該怎麽寫,這時間浪費到我都看不下去了。” 那時候就很好奇全排列到底是什

Mac下 GitlabSourcetree使用 2018

0. 先去Sourcetree官網下載最新的軟體,然後翻牆註冊下(註冊很簡單的) 1. 在控制檯輸入命令 ssh-keygen -t rsa -C "你的email地址"  生成rsa Generating public/private rsa key pair. Enter fi

基於 Git實現版本控制

一,什麼是版本控制? 版本控制是指對軟體開發過程中各種程式程式碼、配置檔案及說明文件等檔案變更的管理,是軟體配置管理的核心思想之一。 在進行專案開發過程中,你是否會有下面的經歷? 當客戶需求改變時,需要重新對專案進行修改。又怕將來客戶撤銷這個需求怎麼辦?只能把

微信小程式 使用TGit 實現版本控制

登入小程式網頁管理平臺後,在《設定》中《開發者工具》裡面開通《騰訊雲》和《TGit許可權管理》兩個服務 , 建立一個專案後,點選程式碼可以看到專案的詳細資訊。 插一嘴:開發人員管理部分: 需要在微信小程式 網頁管理端 點選《使用者身份》進行使用者管理 ,新增後

最課程階段大作業之01:使用SVN實現版本控制

       版本控制在友軍那裡都是放在整個培訓的最後階段才開始講的,但我們打算放到SE階段。與其匆匆在專案實戰階段弄個半生不熟,然後進入實際工作中接受他人對你的懷疑,不如……早死早超生~~~。        可是,我們畢竟現在才剛學了Java一個月,程式碼都寫的不溜呢,甚至都不知道目前掌握的知識能做點撒實

BigInteger.setBitBigInteger.testBit實現許可權控制

java.math.BigInteger.setBit(int n) 返回一個BigInteger,其值相當於BigInteger與指定的設定位。它計算 (this | (1<<n)).java.math.BigInteger.testBit(int n) 當且僅

PowerDesigner實現版本控制,多人協作

配置資料來源 Database –> Configure Connections –> Connection Profiles 新增一個 JDBC connection URL 記得帶字元編碼,不然上傳到repository會出現亂碼 環境

gitlabsourcetree ssh配置

1 開啟Gitbase檢視本地是否已生成ssh祕鑰cd ~/.sshls如果已生成 如下2 如果未生成,則執行命令生成祕鑰ssh-keygen -t rsa -C "[email protected]"  郵箱改為自己的郵箱地址此時再執行第一步,ssh祕鑰已經生成3

分散式集中式的版本控制的區別!

前面提到,Linus一直痛恨CVS及SVN這些集中式的版本控制系統,為什麼呢?Git是分散式版本控制系統,那麼集中式和分散式版本控制系統又有什麼區別呢? 先說集中式版本控制系統,版本庫是集中存放在中央伺服器的,而幹活的時候,用的都是自己的電腦,所以要先從中央伺服器取得最新的版本,然後開始幹活,幹完活了,

Vue | 自定義指令動態路由實現許可權控制

功能概述: - 根據後端返回介面,實現路由動態顯示 - 實現按鈕(HTML元素)級別許可權控制 涉及知識點: - 路由守衛 - Vuex使用 - Vue自定義指令 # 導航守衛 > 前端工程採用Github開源專案`Vue-element-admin`作為模板,該專案地址:[Github | Vue

IntelliJ IDEA + GitHub(git) 詳細圖解 如何實現專案的版本控制管理(on win 7 64 bit)

在IntelliJ IDEA 編輯器裡面使用GitHub,把專案放到GitHub伺服器上,實現版本管理的目的。 具體遇到並解決了下面問題。1."Cannot run program "git.exe": CreateProcess error=2, 系統找不到指定的檔案

gitSourceTree版本控制的環境配置

1、下載安裝包 2、安裝     2.1、開啟安裝包,中間什麼都不要管,一直點下一步(next),直到出現下面的圖:  到這裡我們發現,sourcetree需要登入授權才可以使用,所以我們下面要通過操作來跳過這個步驟。 到這裡我們發現,sourcetree需

git 版本控制SourceTree的安裝使用 eclipse 的egit 外掛安裝使用

此方法本人試用過。 Git是什麼? Git是一款免費、開源的分散式版本控制系統,用於敏捷高效地處理任何或小或大的專案。 Git可以有效、高速的處理從很小到非常大的專案版本管理。Git 是 Linu

對API進行版本控制的重要性實現方式

我在API設計中收到的最常見問題之一就是如何對API進行版本控制。雖然並非所有API都完全相同,但我發現在API版本控制方面,某些模式和實踐適用於大多數團隊。我已經將這些內容收集起來,下面將提供一些關於版本控制策略的建議,該策略將幫助大多數API提供商,無論他們是向內部署API,還是對外的API。 API版本

centos7搭建gitlab版本控制系統

resolv permanent all network 物理地址 original data epo nbsp 一. 配置centos7網絡 查看本地ip地址的方法: ip addr a) 修改對應網卡的DNS的配置文件 sudo vi /etc/resolv.conf

樸素貝葉斯算法資料整理PHP 實現版本

樸素貝葉斯樸素貝葉斯算法簡潔http://blog.csdn.net/xlinsist/article/details/51236454 引言先前曾經看了一篇文章,一個老外程序員寫了一些很牛的Shell腳本,包括晚下班自動給老婆發短信啊,自動沖Coffee啊,自動掃描一個DBA發來的郵件啊, 等等。於是我也想