GitLab的一鍵安裝方式以及使用Git工具上傳代碼

1、安裝環境的介紹
node

Centos 6.7  x86_64   2.6.32-573.el6.x86_64   IP:192.168.159.129   #公司內部測試服務器mysql

GitLab版本:9.1.2nginx

軟件包下載地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/ git

2、安裝過程github

#rpm -ivh gitlab-ce-9.1.2-ce.0.el6.x86_64.rpm 
Preparing...                ########################################### [100%]
   1:gitlab-ce              ########################################### [100%]
hostname: Host name lookup failure


       *.                  *.
      ***                 ***
     *****               *****
    .******             *******
    ********            ********
   ,,,,,,,,,***********,,,,,,,,,
  ,,,,,,,,,,,*********,,,,,,,,,,,
  .,,,,,,,,,,,*******,,,,,,,,,,,,
      ,,,,,,,,,*****,,,,,,,,,.
         ,,,,,,,****,,,,,,
            .,,,***,,,,
                ,*,.

     _______ __  __          __
    / ____(_) /_/ /   ____ _/ /_
   / / __/ / __/ /   / __ `/ __ \
  / /_/ / / /_/ /___/ /_/ / /_/ /
  \____/_/\__/_____/\__,_/_.___/


gitlab: Thank you for installing GitLab!
gitlab: To configure and start GitLab, RUN THE FOLLOWING COMMAND:

sudo gitlab-ctl reconfigure

gitlab: GitLab should be reachable at http://gitlab.example.com
gitlab: Otherwise configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
gitlab: And running reconfigure again.
gitlab: 
gitlab: For a comprehensive list of configuration options please see the Omnibus GitLab readme
gitlab: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
gitlab: 
It looks like GitLab has not been configured yet; skipping the upgrade script.
根據上面的提示執行:
#sudo gitlab-ctl reconfigure
Starting Chef Client, version 12.12.15
resolving cookbooks for run list: ["gitlab"]
Synchronizing Cookbooks:
  - gitlab (0.0.1)
  - package (0.0.0)
  - runit (0.14.2)
Installing Cookbook Gems:
Compiling Cookbooks...
Recipe: gitlab::default
  * directory[/etc/gitlab] action create
    - change mode from '0755' to '0775'
init (upstart 0.6.5)
  Converging 378 resources
  * directory[/etc/gitlab] action create (up to date)
  * directory[Create /var/opt/gitlab] action create
    - create new directory /var/opt/gitlab
    - change mode from '' to '0755'
    - change owner from '' to 'root'
    - change group from '' to 'root'
  * directory[/opt/gitlab/embedded/etc] action create
    - create new directory /opt/gitlab/embedded/etc
    - change mode from '' to '0755'
    - change owner from '' to 'root'
    - change group from '' to 'root'
  * template[/opt/gitlab/embedded/etc/gitconfig] action create
    - create new file /opt/gitlab/embedded/etc/gitconfig
    - update content in file /opt/gitlab/embedded/etc/gitconfig from none to 5fe039
    --- /opt/gitlab/embedded/etc/gitconfig      2017-05-25 10:46:30.027207736 +0800
    +++ /opt/gitlab/embedded/etc/.chef-gitconfig20170525-6666-jc6wi6    2017-05-25 10:46:30.026207736 +0800
    @@ -1 +1,10 @@
    +[pack]
    +  threads = 1
    +[receive]
    +  fsckObjects = true
    +[repack]
    +  writeBitmaps = true
    +[transfer]
    +  hideRefs=^refs/tmp/
    +hideRefs=^refs/keep-around/
    - change mode from '' to '0755'
Recipe: gitlab::web-server
  * group[Webserver user and group] action create
    - create group gitlab-www
  * user[Webserver user and group] action create
    - create user gitlab-www
Recipe: gitlab::users
………………………………                        #會輸出不少初始化的信息
    +
    - change owner from '' to 'root'
    - change group from '' to 'root'
  * ruby_block[reload gitlab-monitor svlogd configuration] action nothing (skipped due to action :nothing)
  * file[/opt/gitlab/sv/gitlab-monitor/down] action delete (up to date)
  * link[/opt/gitlab/init/gitlab-monitor] action create
    - create symlink at /opt/gitlab/init/gitlab-monitor to /opt/gitlab/embedded/bin/sv
  * link[/opt/gitlab/service/gitlab-monitor] action create
    - create symlink at /opt/gitlab/service/gitlab-monitor to /opt/gitlab/sv/gitlab-monitor
  * ruby_block[supervise_gitlab-monitor_sleep] action run
    - execute the ruby block supervise_gitlab-monitor_sleep
  * service[gitlab-monitor] action nothing (skipped due to action :nothing)
  * execute[/opt/gitlab/bin/gitlab-ctl start gitlab-monitor] action run
    [execute] ok: run: gitlab-monitor: (pid 7720) 1s
    - execute /opt/gitlab/bin/gitlab-ctl start gitlab-monitor
Recipe: gitlab::default
  * link[/opt/gitlab/service/gitlab-git-http-server] action delete (up to date)
  * directory[/opt/gitlab/sv/gitlab-git-http-server] action delete (up to date)
Recipe: gitlab::gitlab-rails
  * execute[clear the gitlab-rails cache] action run
    - execute /opt/gitlab/bin/gitlab-rake cache:clear
Recipe: gitlab::redis
  * ruby_block[reload redis svlogd configuration] action create
    - execute the ruby block reload redis svlogd configuration
Recipe: gitlab::postgresql
  * ruby_block[reload postgresql svlogd configuration] action create
    - execute the ruby block reload postgresql svlogd configuration
Recipe: gitlab::unicorn
  * ruby_block[reload unicorn svlogd configuration] action create
    - execute the ruby block reload unicorn svlogd configuration
Recipe: gitlab::sidekiq
  * ruby_block[reload sidekiq svlogd configuration] action create
    - execute the ruby block reload sidekiq svlogd configuration
Recipe: gitlab::gitaly
  * service[gitaly] action restart
    - restart service service[gitaly]
  * ruby_block[reload gitaly svlogd configuration] action create
    - execute the ruby block reload gitaly svlogd configuration
Recipe: gitlab::gitlab-workhorse
  * service[gitlab-workhorse] action restart
    - restart service service[gitlab-workhorse]
  * ruby_block[reload gitlab-workhorse svlogd configuration] action create
    - execute the ruby block reload gitlab-workhorse svlogd configuration
Recipe: gitlab::nginx
  * ruby_block[reload nginx svlogd configuration] action create
    - execute the ruby block reload nginx svlogd configuration
Recipe: gitlab::logrotate
  * ruby_block[reload logrotate svlogd configuration] action create
    - execute the ruby block reload logrotate svlogd configuration
Recipe: gitlab::prometheus
  * service[prometheus] action restart
    - restart service service[prometheus]
  * ruby_block[reload prometheus svlogd configuration] action create
    - execute the ruby block reload prometheus svlogd configuration
Recipe: gitlab::node-exporter
  * ruby_block[reload node-exporter svlogd configuration] action create
    - execute the ruby block reload node-exporter svlogd configuration
Recipe: gitlab::redis-exporter
  * ruby_block[reload redis-exporter svlogd configuration] action create
    - execute the ruby block reload redis-exporter svlogd configuration
Recipe: gitlab::postgres-exporter
  * service[postgres-exporter] action restart
    - restart service service[postgres-exporter]
  * ruby_block[reload postgres-exporter svlogd configuration] action create
    - execute the ruby block reload postgres-exporter svlogd configuration
Recipe: gitlab::gitlab-monitor
  * service[gitlab-monitor] action restart
    - restart service service[gitlab-monitor]
  * ruby_block[reload gitlab-monitor svlogd configuration] action create
    - execute the ruby block reload gitlab-monitor svlogd configuration

Running handlers:
Running handlers complete
Chef Client finished, 325/427 resources updated in 03 minutes 29 seconds
gitlab Reconfigured!
能夠看到提示執行了3分鐘29秒!
查看啓動狀況
#netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 127.0.0.1:9121              0.0.0.0:*                   LISTEN      7685/redis_exporter 
tcp        0      0 127.0.0.1:9090              0.0.0.0:*                   LISTEN      7839/prometheus     
tcp        0      0 127.0.0.1:9187              0.0.0.0:*                   LISTEN      7850/postgres_expor 
tcp        0      0 127.0.0.1:9100              0.0.0.0:*                   LISTEN      7638/node_exporter  
tcp        0      0 127.0.0.1:9168              0.0.0.0:*                   LISTEN      7865/ruby           
tcp        0      0 127.0.0.1:8080              0.0.0.0:*                   LISTEN      7519/unicorn master 
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      7561/nginx          
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      5506/sshd           
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      5585/master         
tcp        0      0 0.0.0.0:8060                0.0.0.0:*                   LISTEN      7561/nginx          
tcp        0      0 :::3306                     :::*                        LISTEN      6289/mysqld         
tcp        0      0 ::1:9168                    :::*                        LISTEN      7865/ruby           
tcp        0      0 :::22                       :::*                        LISTEN      5506/sshd           
tcp        0      0 ::1:25                      :::*                        LISTEN      5585/master         
關閉
# sudo gitlab-ctl stop
ok: down: gitaly: 0s, normally up
ok: down: gitlab-monitor: 1s, normally up
ok: down: gitlab-workhorse: 0s, normally up
ok: down: logrotate: 0s, normally up
ok: down: nginx: 0s, normally up
ok: down: node-exporter: 0s, normally up
ok: down: postgres-exporter: 1s, normally up
ok: down: postgresql: 1s, normally up
ok: down: prometheus: 0s, normally up
ok: down: redis: 0s, normally up
ok: down: redis-exporter: 0s, normally up
ok: down: sidekiq: 0s, normally up
ok: down: unicorn: 0s, normally up
啓動
# sudo gitlab-ctl start
ok: run: gitaly: (pid 8296) 0s
ok: run: gitlab-monitor: (pid 8301) 0s
ok: run: gitlab-workhorse: (pid 8304) 1s
ok: run: logrotate: (pid 8312) 0s
ok: run: nginx: (pid 8318) 1s
ok: run: node-exporter: (pid 8324) 0s
ok: run: postgres-exporter: (pid 8329) 1s
ok: run: postgresql: (pid 8334) 0s
ok: run: prometheus: (pid 8342) 0s
ok: run: redis: (pid 8350) 1s
ok: run: redis-exporter: (pid 8354) 0s
ok: run: sidekiq: (pid 8359) 1s
ok: run: unicorn: (pid 8362) 0s
重啓
#sudo gitlab-ctl restart      #其實不加sudo也能夠!
查看添加了幾個用戶,以下:
#tail -5 /etc/passwd
gitlab-www:x:498:499::/var/opt/gitlab/nginx:/bin/false
git:x:497:498::/var/opt/gitlab:/bin/sh
gitlab-redis:x:496:497::/var/opt/gitlab/redis:/bin/false
gitlab-psql:x:495:496::/var/opt/gitlab/postgresql:/bin/sh
gitlab-prometheus:x:494:495::/var/opt/gitlab/prometheus:/bin/sh

3、登陸驗證
web

在瀏覽器輸入http://192.168.159.129  就能夠看到GitLab的界面了,以下:redis

wKiom1kmdyOB3tXbAADoNaufRRg769.png

第一次登陸須要設置新密碼,而且密碼長度不能小於8!設置好以後,會跳轉到登陸界面,以下:
sql

wKiom1kmd9fhETuqAACwc1JB7PQ652.png

默認用戶名是root,而後輸入剛纔新設置的密碼,登陸以後,界面以下:shell

wKiom1kmeFjzR0sOAAB88gbaEl4543.png

到這裏一鍵安裝GitLab就完成了,就能夠進行建立項目之類的操做了。數據庫

4、postgresql相關命令介紹

注:由於使用一鍵安裝GitLab的rpm包,默認數據庫是postgresql,因此對於不熟悉的朋友,能夠參考!

查看postgresql的數據存放目錄
[root@web1 gitlab]# su - gitlab-psql
-sh-4.1$ ll
total 4
drwx------ 19 gitlab-psql root 4096 May 25 10:55 data
-sh-4.1$ ll data/
total 112
drwx------ 6 gitlab-psql root         4096 May 25 10:46 base
drwx------ 2 gitlab-psql root         4096 May 25 10:55 global
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_clog
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_commit_ts
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_dynshmem
-rw-r--r-- 1 gitlab-psql root         3198 May 25 10:46 pg_hba.conf
-rw-r--r-- 1 gitlab-psql root         1789 May 25 10:46 pg_ident.conf
drwx------ 4 gitlab-psql root         4096 May 25 10:46 pg_logical
drwx------ 4 gitlab-psql root         4096 May 25 10:46 pg_multixact
drwx------ 2 gitlab-psql root         4096 May 25 10:55 pg_notify
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_replslot
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_serial
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_snapshots
drwx------ 2 gitlab-psql root         4096 May 25 10:55 pg_stat
drwx------ 2 gitlab-psql root         4096 May 25 11:11 pg_stat_tmp
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_subtrans
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_tblspc
drwx------ 2 gitlab-psql root         4096 May 25 10:46 pg_twophase
-rw------- 1 gitlab-psql root            4 May 25 10:46 PG_VERSION
drwx------ 3 gitlab-psql root         4096 May 25 11:10 pg_xlog
-rw------- 1 gitlab-psql root           88 May 25 10:46 postgresql.auto.conf
-rw-r--r-- 1 gitlab-psql root        20132 May 25 10:46 postgresql.conf
-rw------- 1 gitlab-psql gitlab-psql    90 May 25 10:55 postmaster.opts
-rw------- 1 gitlab-psql gitlab-psql   101 May 25 10:55 postmaster.pid
postgresql 版本
#cat PG_VERSION 
9.6
查看postgresql的進程
#ps aux | grep postgre
root       7378  0.0  0.0   3940   360 ?        Ss   10:46   0:00 runsv postgresql
root       7379  0.0  0.0   4084   472 ?        S    10:46   0:00 svlogd -tt /var/log/gitlab/postgresql
root       7697  0.0  0.0   3940   356 ?        Ss   10:48   0:00 runsv postgres-exporter
root       7698  0.0  0.0   4084   476 ?        S    10:48   0:00 svlogd -tt /var/log/gitlab/postgres-exporter
495       13278  0.0  0.6 127968 11924 ?        Ssl  11:41   0:03 /opt/gitlab/embedded/bin/postgres_exporter -web.listen-address=localhost:9187
495       13283  0.0  1.7 545204 34160 ?        Ss   11:41   0:00 /opt/gitlab/embedded/bin/postgres -D /var/opt/gitlab/postgresql/data
495       13287  0.0  1.0 545320 20344 ?        Ss   11:41   0:02 postgres: checkpointer process                                      
495       13288  0.0  0.2 545204  5032 ?        Ss   11:41   0:00 postgres: writer process                                            
495       13289  0.0  0.8 545204 16228 ?        Ss   11:41   0:00 postgres: wal writer process                                        
495       13290  0.0  0.1 545776  2196 ?        Ss   11:41   0:00 postgres: autovacuum launcher process                               
495       13291  0.0  0.0  31012  1460 ?        Ss   11:41   0:00 postgres: stats collector process                                   
495       13332  0.0  0.4 644080  8408 ?        Ss   11:41   0:01 postgres: gitlab-psql postgres [local] idle                         
495       14219  0.0  0.4 644128  8892 ?        Ss   11:50   0:00 postgres: gitlab gitlabhq_production [local] idle                   
495       15207  0.0  0.4 643884  8160 ?        Ss   12:00   0:00 postgres: gitlab gitlabhq_production [local] idle                   
495       15208  0.0  0.4 643888  8392 ?        Ss   12:00   0:00 postgres: gitlab gitlabhq_production [local] idle                   
495       19681  0.0  0.3 643428  6804 ?        Ss   12:46   0:00 postgres: gitlab gitlabhq_production [local] idle                   
495       19706  0.0  0.3 643428  6812 ?        Ss   12:47   0:00 postgres: gitlab gitlabhq_production [local] idle      

能夠看到啓動以後的postgresql有2個默認數據庫,一個是postgres,一個是gitlabhq_production!
進入postgresql控制檯方法,在postgreSQL的安裝目的bin下執行命令: 
用法:psql database_name,
例:/usr/local/pgsql/bin/psql mydb
指定host、用戶名和數據庫的話,如:
/usr/local/pgsql/bin/psql -h localhost -U postgres -d testdb
注:-h 也能夠指定socket文件目錄
#########################################
進入postgresql的gitlabhq_production庫
#su - gitlab-psql
-sh-4.1$ /opt/gitlab/embedded/bin/psql -h /var/opt/gitlab/postgresql -d gitlabhq_production
psql (9.6.1)
Type "help" for help.
gitlabhq_production=# help
You are using psql, the command-line interface to PostgreSQL.
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit
gitlabhq_production=# \q      #退出
注意:-h 後面指定服務器ip或者socket文件所在目錄
進入postpgresql的postgres庫
#su - gitlab-psql
-sh-4.1$ psql -h /var/opt/gitlab/postgresql -d postgres
psql (9.6.1)
Type "help" for help.
postgres=# 
##############################################
postgresql的其餘用法介紹
建立數據庫
CREATE DATABASE test WITH OWNER = postgres ENCODING = 'UTF8';
查看版本: 
#psql --version 或 SELECT version();
查看全部數據庫:\l
選擇數據庫:\c databasename
查看全部表:\dt
查看某個表的結構:\d tablename
退出psql控制檯:\q
查看全部索引:\di

查看錶的索引:
select * from pg_indexes where tablename='log';
查看數據庫大小:
select pg_size_pretty(pg_database_size('test_db'));
查看全部數據庫大小
select pg_database.datname, pg_database_size(pg_database.datname) AS size from pg_database;
查看錶的大小:
select pg_size_pretty(pg_relation_size('test_table'));
查看錶的總大小,包括索引大小  
select pg_size_pretty(pg_total_relation_size('test')); 
查看全部表空間  
select spcname from pg_tablespace;          
查看錶空間大小
select pg_size_pretty(pg_tablespace_size('pg_default'));

導出備份數據庫:
pg_dump -h localhost -U postgres databasename > /tmp/databasename.bak.yyyymmdd.sql
導入恢復數據庫(sql文件是pg_dump導出的文件就行,能夠是整個數據庫,也能夠只是單個表,也能夠只是結構等):
psql -h localhost -U postgres -d databasename < /tmp/databasename.bak.yyyymmdd.sql

導出某個表:
pg_dump -h localhost -U postgres -t tablename dbname > test.sql
導出某個表的結構,加參數"-s":
pg_dump -h localhost -U postgres -t tablename -s dbname > test_construct.sql
導出某個表的數據,加參數"-a":
pg_dump -h localhost -U postgres -t tablename -a dbname > test_data.sql
查看序列:
select * from information_schema.sequences where sequence_schema = 'public';

5、經過Git工具提交windows上的代碼到GitLab上

說明:不少開發人員喜歡使用Git工具來提交代碼到GitLab,那麼這裏就着重介紹下。

一、首先下載Git並安裝

下載地址:https://git-for-windows.github.io  下載好以後雙擊Git-2.13.0-64-bit.exe安裝便可。

注:一路Next,按照默認的選擇便可!(我是這麼幹的,若是你本身有特殊須要,能夠自定義)

二、打開Git並配置,以下圖:

wKioL1kmrASxVNAdAABJVqfwotM445.png

雙擊「Git Bash」會彈出一個shell 方框,以下:

wKioL1kmrESBj8yfAABKgZk0HI4640.png

好了,Git Bash也打開了,下面咱們在GitLab上註冊一個普通用戶,而後提交代碼。

三、在GitLab上註冊用戶,以下圖:

wKioL1kmrOXwjddJAACi_-3GBt4550.png

註冊成功以後,會看到一個提示註冊成功的頁面,提示:Welcome! You have signed up successfully.

由於是內部測試虛擬機,網絡比較慢,因此註冊普通帳號以後,發送郵件有些延遲,還發到了垃圾郵箱中,以下圖:

wKioL1k0svry8ff6AAEg8cXkq5g332.png

能夠看到郵件內容是提示你添加pub key,按照下面的步驟添加便可!

四、建立一個項目

註冊好以後,點擊右上角的「+」圖標(建立新項目圖標)開始建立新項目,以下圖:

wKiom1kmshyzTv0WAAD5UDKRlas403.png

點擊「Create project」以後,會從新打開一個頁面,以下:

wKiom1kmsnPBP-Z9AAC6Xx1zKig185.png

能夠根據提示得知,新用戶建立的項目須要將SSH key添加進來!點擊「add an SSH key」會出現一個新的頁面,提示你須要將生成的pub key粘貼在裏面,以下圖:

wKiom1kmsz6Btk_NAAC8oz5xJKo937.png

好的,執行到這一步咱們將視線轉移到windows機器的Git工具,經過這個工具生成公鑰,而後添加。

五、使用Git生成公鑰並添加到GitLab

生成公鑰命令:ssh-keygen -t rsa -C "郵箱"    而後一路回車便可!

wKiom1kms-iSIaHoAACZIDk-NMA188.png

根據上圖的提示,生成的公鑰在C:\Users\Administrator.2345-20170207QA\.ssh目錄下面,而後找到打開id_rsa.pub將其中的字符串原封不動的複製到GitLab頁面,以下圖:

wKiom1kmtLPTIVssAADEbIvctnA231.png

點擊「Add key」會彈出一個頁面,表示key添加成功,Title 會自動補全生成key時候輸入的郵箱地址!

六、而後測試上傳代碼到GitLab的mytest項目

其實上傳代碼的一些命令在GitLab界面的新項目頁面是給到咱們的,咱們按照上面的步驟操做便可,以下命令:

Git global setup   全局設置

$git config --global user.name "new_user_name"  #註冊時候的用戶名
$git config --global user.email "生成pub key時候的郵箱地址"

Create a new repository   建立一個新的庫

$git clone git@gitlab.example.com:new_user_name/mytest.git
$cd mytest
$touch README.md
$git add README.md
$git commit -m "add README"
$git push -u origin master
由於是新項目,沒有任何其餘文件,因此執行以上8條命令便可!!!
#####################################################################
Existing folder          已經存在的目錄
cd existing_folder
git init
git remote add origin git@gitlab.example.com:new_user_name/mytest.git
git add .
git commit
git push -u origin master

Existing Git repository  已經存在的一個庫
cd existing_repo
git remote add origin git@gitlab.example.com:new_user_name/mytest.git
git push -u origin --all
git push -u origin --tags

在Git Bash工具中執行上面列出的8條命令,以下圖:

wKioL1knd-uSU4_vAACxy7Q9ZZU849.png

注:執行第三條命令的時候,報錯了,提示不能解析gitlab.example.com 由於是內部測試機我沒有作任何解析,因此報錯了。那麼我就在本機windows機器的hosts文件中解析一下,而後從新執行就ok了!

192.168.159.129  gitlab.example.com

執行第三條命令的目的是將gitlab上面咱們建立的項目mytest拉到本地,咱們看看是否拉取成功,以下圖:

wKioL1kneS_Teg4nAACJ6-voouQ316.png

能夠看到mytest/ 已經成功拉取到了windows機器上!

繼續執行命令,在mytest/項目下建立一個README.md文件,並上傳到gitlab上,以下圖:

wKioL1knee6wBM4uAAC4UUOvcso754.png

上傳成功以後,咱們到gitlab上mytest項目中查看上傳的文件,以下圖:

wKiom1knel-yNqZnAADMECgzf_k489.png

能夠看到README.md文件已經成功上傳到mytest/項目中了!

############################################

上面介紹的是上傳本地代碼到gitlab上,對開發人員來講項目名和代碼都是英文的,便於維護。但對於系統工程師來講可能須要上傳一些文檔到gitlab上以便其餘技術人員參考,因此下面我介紹一下上傳中文目錄和文件到gitlab的方法:首先在本機windows機器的項目目錄(這裏以mytest項目爲例)下面建立一箇中文目錄,以下圖:

wKioL1knnCaihk32AAB9Gk7AYfY243.png

而後在「測試中文目錄」下面建立一個「測試1.txt」文件,而後經過Git Bash工具上傳到git上,以下圖

wKiom1knnTeiWBh2AADScSvuXWI531.png

執行標紅的二、三、4這3條命令便可!而後到gitlab上查看是否能夠正常顯示中文,以下圖:

wKiom1knnfmiA8cTAACYI1ZhaT8108.png

能夠看到中文在gitlab上顯示正常。剛纔我只是在「測試中文目錄」中建立了「測試1.txt"文件,沒有在其中寫入中文,如今我寫入一行中文測試,內容是「這是爲了測試gitlab是否能夠正常顯示中文!」而後再push到gitlab上,以下圖:

wKioL1knoejzSLT1AACgVmKJDg0758.png

執行完成以後,到gitlab上查看,以下圖:

wKioL1knonXjXUNfAABLmrcjMO0876.png

能夠看到也是正常的!!!

注意:在gitlab上不能直接建立中文或者帶有中文的項目名,會報錯的提示以下:

Path can contain only letters, digits, '_', '-' and '.'. Cannot start with '-', end in '.git' or end in '.atom'

你能夠建立一個英文項目名,在此項目下建立中文目錄,保存中文文檔。不過聽說可使用工具來實現建立中文項目名的目的,這個就不介紹了。

6、gitlab忘記密碼如何找回

注:有些朋友密碼比較多容易記混或者忘記,那麼若是忘記密碼,如何找回呢?

首先你在gitlab的登陸界面點擊忘記密碼(Forgot your password)的鏈接,以下:

wKiom1k1CHiRBzXaAAApbKeckSY001.png

而後會彈出一個頁面,以下:

wKiom1k1CLqRJh4kAAAqCpa9gw0571.png

輸入註冊用戶時候留下的郵箱地址,這裏就顯示出了郵箱地址的重要性,而後點擊「Reset password",在彈出的頁面上會提示你已經發送了重置密碼的郵件到你的郵箱,而後你到本身郵箱查看,以下圖:

wKiom1k1Cb3yKGJlAAD7YiXa1Vk827.png

能夠在垃圾箱中看到郵件,查看郵件並點擊「Reset password」會彈出重置密碼頁面,你從新輸入本身的新密碼便可。而後彈出從新登陸界面,輸入用戶名和新設置的密碼,就能夠順利登陸了!最後會發送一封郵件告知你密碼已經成功修改,以下圖:

wKiom1k1FxWQT2GvAABRmfOptPo116.png


不足之處,請多多留言指教!

相關文章
相關標籤/搜索