导航:首页 > IDC知识 > git测试服务器

git测试服务器

发布时间:2020-12-29 23:24:51

1、怎么clone自己搭建的git服务器

首先需要装好CentOS系统,作为测试,你可以选择装在虚拟机上,这样比较方便。这步默认你会,就不讲了。
有了CentOS,那么如何搭建Git服务器呢?
1、首先需要安装Git,可以使用yum源在线安装:
[root@localhost Desktop]# yum install -y git

2、创建一个git用户,用来运行git服务
# adser git

3、初始化git仓库:这里我们选择/data/git/learngit.git来作为我们的git仓库
[root@localhost git]# git init --bare learngit.git
Initialized empty Git repository in /data/git/learngit.git/

执行以上命令,会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:
[root@localhost git]# chown git:git learngit.git

4、在这里,Git服务器就已经搭得差不多了。下面我们在客户端clone一下远程仓库
Zhu@XXX /E/testgit/8.34
$ git clone [email protected]:/data/git/learngit.git
Cloning into 'learngit'...
The authenticity of host '192.168.8.34 (192.168.8.34)' can't be established.
RSA key fingerprint is 2b:55:45:e7:4c:29:cc:05:33:78:03:bd:a8:cd:08:9d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.8.34' (RSA) to the list of known hosts.
[email protected]'s password:

这里两点需要注意:第一,当你第一次使用Git的clone或者push命令连接GitHub时,会得到一个警告:
The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.
RSA key fingerprint is xx.xx.xx.xx.xx.
Are you sure you want to continue connecting (yes/no)?

这是因为Git使用SSH连接,而SSH连接在第一次验证GitHub服务器的Key时,需要你确认GitHub的Key的指纹信息是否真的来自GitHub的服务器,输入yes回车即可。

Git会输出一个警告,告诉你已经把GitHub的Key添加到本机的一个信任列表里了:
Warning: Permanently added 'github.com' (RSA) to the list of known hosts.

这个警告只会出现一次,后面的操作就不会有任何警告了。
如果你实在担心有人冒充GitHub服务器,输入yes前可以对照GitHub的RSA Key的指纹信息是否与SSH连接给出的一致。
第二,这里提示你输入密码才能clone,当然如果你知道密码,可以键入密码来进行clone,但是更为常见的方式,是利用SSH的公钥来完成验证。

5、创建SSH Key
首先在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "[email protected]"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

6、Git服务器打开RSA认证
然后就可以去Git服务器上添加你的公钥用来验证你的信息了。在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开,即:
1.RSAAuthentication yes
2.PubkeyAuthentication yes
3.AuthorizedKeysFile .ssh/authorized_keys

这里我们可以看到公钥存放在.ssh/authorized_keys文件中。所以我们在/home/git下创建.ssh目录,然后创建authorized_keys文件,并将刚生成的公钥导入进去。

然后再次clone的时候,或者是之后push的时候,就不需要再输入密码了:
Zhu@XXX/E/testgit/8.34
$ git clone [email protected]:/data/git/learngit.git
Cloning into 'learngit'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.

7、禁用git用户的shell登陆
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
git:x:1001:1001:,,,:/home/git:/bin/bash

最后一个冒号后改为:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

2、什么是git服务器

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git的主要功能:

1、查看邮件或者通过其它方式查看一般开发者的提交状态。

2、打上补丁,解决冲突(可以自己解决,也可以要求开发者之间解决以后再重新提交,如果是开源项目,还要决定哪些补丁有用,哪些不用)。

3、向公共服务器提交结果,然后通知所有开发人员。



(2)git测试服务器扩展资料:

Git的优缺点:

优点:

1、适合分布式开发,强调个体。

2、公共服务器压力和数据量都不会太大。

3、速度快、灵活。

4、任意两个开发者之间可以很容易的解决冲突。

5、离线工作。

缺点:

1、资料少(起码中文资料很少)。

2、学习周期相对而言比较长。

3、不符合常规思维。

4、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

3、使用git做代码管理,如何在代码改变的时候自动同步到测试服务器上?

git 有一系列 hook,视具体配置,利用 post-receive hook 或 post-commit hook 即可。

4、如何用tortoisegit部署服务器

在D盘新建一个目录,例如"D:\Git",并进入目录右键目录空白处选择"Git Create repository here...",弹出对话框点确认,这样即建立了一个本专地Git仓库.
在该仓库目属录下创建一个测试项目文本文件,右键目录空白处,选择Git Commit -> "master" ...,在弹出对话框里输入提示注释,选择要加入的版本控制文件,确定即可提交.
现在只是在本地实现使用Git管理项目,在此界面若显示Success则本地提交成功,接下来点击Push..,把之前的改动递交到Git服务器上.

5、git怎么clone服务器上的代码

1
准备,下载git到你的电脑上,下载地址:
安装,直接下一步下一步就好,记得下载位置就好,配置的时候要用
2
在studio中设置git插件:File->Setting->Version Control->Git,添加您刚刚安装的git地址目录,例如: C:\Program Files\Git\bin\git.exe ,
然后可以点击Test测试一下,如下图:那么你就设置成功了。

3
初始化git项目(git init),操作如下:VCS->Enable Control Integration->Select "Git".
4
为git添加remote,在这一步中,studio没有为我们提供可视化的GUI,得用Git工具了。找到并打开git安装目录下面的Git Bash,将目录切换到项目的目录,然后输入git添加remote的命令,例如:git remote add origin "".

5
将代码添加到VCS(git add),选中要提交的文件->VCS->Git->Add,

6
提交变化(git commit),VCS->Commit Changes, 在提交的时候可以选择Commit and Push,就可以直接push到服务器。

7
Git Push,VCS->Git->Push.
最后,如果要是clone project到studio

6、本地git软件怎么连接linux服务器地址

1、前期准备
服务器上配置好的git
git客户端
1.1
在服务器上安装git (本机所使用的linux是ubuntu)
在服务器输入命令:sudo apt-get install git即可 然后创建名字为git的用户组和用户
1.2
下载客户端 在浏览器地址栏输入:https://git-for-windows.github.io/
回车后

点击Download进行下载
2、具体操作
2.1
在合适的位置创建一个目录充当git远程仓库(本机位置为/usr/testgit),然后使用init命令初始化仓库
在命令终端输入:
sudo git init –bare

2.2
将git init生成的目录所属者改为git
输入命令:sudo chown -R git:git *

至此服务器端的操作完成。
在客户端合适位置使用git 客户端从服务器资源
2.3
首先打开git客户端

点击Git Bash Here 后出现

在git客户端命名终端输入:
git clone git@xxxxxx:/rrrrr 其中xxxxxx是远程服务器的地址 rrrrr为git仓库所在位置

如果配置正确你选中的目录下会出现名字为testgit的文件夹 testgit文件夹下随意创建若干个文件

2.3
在git客户端上使用命令 git add 111.txt 222.txt 333.txt 或者使用git add .(将本文件夹下所有文件都add) 该命令的作用是告诉git把文件添加到git仓库
2.4
然后使用git commit命令将文件提交到git仓库

-m 后面的内容为本次提交文件的一些注释内容
此时文件还没有从本地仓库上传到远程服务器仓库
2.5
使用push命令将本地仓库中的内容提交到远程仓库
在git客户端命令终端输入:git push origin master

至此本地仓库中的文件上传已经上传到远程服务器仓库。
在其他文件夹下再次使用 git clone 命令 从远程服务器同步仓库

7、什么是“git”服务器?

1、git是一种分布式的版本管理系统,Linux的创造者Linus写的。

2、GitHub是基于git的代码库托管站,也算是程序员的SMS(以码会友),其中一个主要的开源代码发布或托管站

3、git的作用就是对文件进行版本管理,方便在不同版本进行切换修改,类似文件分不同时间备份让后需要时找回其中一份代替,不过更方便使用。

4、GitHub某种程度上就是代码的网盘,也有开源开发商作为代码发布、存放、征集Bug和意见用。

5、git的特点:

1)就是云的概念,代码可以存在云端git的网站上,就像我们在各种设备间都能浏览到自己存储的网盘文件 一样,我们在各个设备间都能访问到自己的代码。 

2)它的社交属性。因为代码是开源的,每个人都可以浏览别人的项目并提出意见,而且它像微博一样,你能粉别人,也能被别人粉。如果你是大牛,如果你或者你的项目够有趣,你就会有很多粉丝,你的项目也会被更多的人star。 

3)它能给团队合作带来很大帮助。现在有些公司就是用github来开发项目的。github允许多人多分支的工作,并且标示别人的修改和备注,最后还能合并。


8、如何用git,在服务器上面创建一个分支

1,从已有的分支创建新的分支(如从master分支),创建一个dev分支

git checkout -b dev
2,创建完可以查看一下,分支已经切换到dev
git branch
3,提交该分支到远程仓库

git push origin dev
4,测试从远程获取dev

git pull origin dev

或者:

如果用命令行,运行 git fetch,可以将远程分支信息获取到本地,再运行 git checkout -b local-branchname origin/remote_branchname 就可以将远程分支映射到本地命名为local-branchname 的一分支
5,我觉得现在重要的就是设置git push,pull默认的提交获取分支,这样就很方便的使用git push 提交信息或git pull获取信息

git branch --set-upstream-to=origin/dev

取消对master的跟踪

git branch --unset-upstream master
6,现在随便修改一下工程文件的内容,然后git commit ,git push,之后就可以直接提交到远程的dev分支中,而不会是master

与git测试服务器相关的知识