搭建私服并使用git的教程大概吧


这几天闲来无事在我的垃圾vps上搭建一个私服git这里遇到的毛病真的多 一个小毛病都整了半天 我的是debian系统
首先安装git我这里是debian当然是通过apt

apt isntall git 

接下来就是创建git用户了并设置密码

useradd -m git
passwd git 

这里还有一个问题就是新用户创建好了切换过去发现方向键会变成^[[A这是以为默认的shell用的是sh解决方法如下

chsh
在Login Shell [*]后输入

/bin/bash

这里注意我并没有设置密钥登录也没关闭ssh登录有这方面需要可以自己去看看

这里创建用户没啥毛病 但是创建错了删除就很难受了有的显示我遇见过

userdel: command not found

userdel在/usr/sbin/userdel
出现这个问题应该是环境变量没加这里有两个解决方法直接绝对目录执行或者去改环境变量
接下来就是创建目录了并使用git初始化了

su git
mkdir 你想要的目录名得加上.git
cd 你的目录.git
git init 
git config --bool core.bare true

现在搭建完成了先来创建一个文件试试看

touch README.md

git status -sb看看当前文件状态

it@localhost:~/swap.git$ git status -sb
## No commits yet on master
??  README.md
git@localhost:~/swap.git$

?? 表示 git 不知道如何对待这个新的文件
此时要用 git add 将文件添加到「暂存区」

git add README.md(若文件较多,一个个加麻烦,可直接用git add. 一次性将所有变动加到暂存区)

然后可以再 git status -sb 观察其状态

git@localhost:~/swap.git$ git status -sb
## No commits yet on master
A  README.md

?? 变成了 A 即告诉 git 这些文件我要加到仓库里

git commit -m "信息" 将文件正式提交到本地仓库(.git)

同样你可以一个个提交文件

git commit README.md -m '添加README.md'

或者一次提交所有文件

git commit . -m "添加了几个文件"

结果就会显示

git@localhost:~/swap.git$ git commit . -m "添加了几个文件"
[master (root-commit) 99a2347] 添加了几个文件
 1 file changed, 1 insertion(+)
 create mode 100644 README.md

再运行 git status -sb

git@localhost:~/swap.git$ git status -sb
## master

出现## master 说明你已经将文件上传成功了
这时你可以用 git log 看历史变动

git@localhost:~/swap.git$ git log
commit 99a23479bd7740f2d098e0d7db2bda37c8f3bbd0 (HEAD -> master)
Author: lingling <lingling@qq.com>
Date:   Mon Dec 14 06:06:26 2020 -0800

    添加了几个文件

至此,一次在本地使用 git 的过程就完成了
接下来就是私服和客户端配合使用了
现在就创建完成了现在用ls查看一下会发现什么都没有使用ls-la会发现有个.git目录里面装着git的历史纪录或者别的千万别删除
现在就搭建好了私服接下来就是客户端提交了
客户端首先也安装git这里就省略了
安装好了记得首先设置用户名和邮箱

git config --global user.name "用户名"
git config --global user.email "邮箱"

然后就是克隆库了
这个是用法

git clone username@host:/path/to/repository

实例

git clone git@ip:/home/git/swap.git

运行的返回值

[root@VM-0-16-centos ~]# git clone git@IP:/home/git/swap.git
Cloning into 'swap'...
git@IP's password:        //这里以为没有设置密钥所以需要输入密码
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.

接下来我们去看看克隆下来了什么

[root@VM-0-16-centos ~]# cd swap/
[root@VM-0-16-centos swap]# ls
README.md
[root@VM-0-16-centos swap]# ls -la
total 16
drwxr-xr-x   3 root root 4096 Dec 14 22:13 .
dr-xr-x---. 11 root root 4096 Dec 14 22:12 ..
drwxr-xr-x   8 root root 4096 Dec 14 22:13 .git
-rw-r--r--   1 root root   14 Dec 14 22:13 README.md

接下来我们创建几个文件并提交

[root@VM-0-16-centos swap]# echo "<p>你好</p>" > index.html
[root@VM-0-16-centos swap]# ls
index.html  README.md
[root@VM-0-16-centos swap]# cat index.html 
<p>你好</p>
root@VM-0-16-centos swap]# git commit -m "提交了一个index.html"
[master 943ad74] 提交了一个index.html
 1 file changed, 1 insertion(+)
 create mode 100644 index.html
[root@VM-0-16-centos swap]# git push origin master //提交到远程服务器
git@cloud.shagain.club's password: 
Counting objects: 4, done.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 308 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@cloud.shagain.club:/home/git/swap.git
   99a2347..943ad74  master -> master

这里得git提交流程

git add <filename>或者git add * 添加到暂存区 ----->git commit -m "代码提交信息" 这里提交到了本地库 ----->git push origin master 提交到远程库

参考

声明:小小博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 搭建私服并使用git的教程大概吧


Carpe Diem and Do what I like