使用GitHub建立代码服务器可以方便团队或者个人工作,今天在这里记录以下怎么使用GitHub为自己或者团队建立代码服务器的。
个人:
首先申请一个Github帐号:
拥有帐号之后,就可以在本地创建ssh公钥
首先确认本地有没有生成ssh私钥
cd ~/.ssh
如果没有返回,说明本地没有
在terminal中输入
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
这行命令主要是为了产生一个ssh私钥
生成的私钥会被存储在~/.ssh文件夹里
使用命令
ll ~/.ssh
进行查看,会发现有包括三个文件:
id_rsa 私钥
id_rsa.pub 公钥
known_host 本地host的信息
使用cat命令读取id_rsa.pub:
cd ~/.ssh
cat << EOF id_rsa.pub
获得公钥的内容
如果是多人的话,收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub
文件,把所有公钥导入到/home/git/.ssh/authorized_keys
文件里,一行一个。
将相应公钥内容拷贝到git上的new SSH(注:ssh,Secure Shell,是建立在应用层和传输层协议上的安全协议,专为远程登录绘画和其他网络服务提供安全性的协议),如图
这时已经为我们生成了远程仓库
可以使用命令 ssh -T git@github.com进行查看
此时说明已经配置成功
接下来需要配置本地仓库,选择一个文件夹,在文件夹中打开终端输入
sudo git init --bare 308.git
此时就在本地生成了一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git
结尾。然后,把owner改为git
生成的仓库中有以下内容:
branches config description HEAD hooks info objects refs
此时生成的代码仓库可以向GitHub上推送自己的代码
查询所得资料中仅有少数提到如何远程部署,接下来讲讲如何部署:
首先,在将本地仓库上传到github之前,需要设置username和email,因为github每次commit都会首先查阅本地config文件中存储的user.name等信息并进行备注。
git config --global user.name "×××"
# ×××可以备注为自己想要在项目中显示的名字
git config --global user.email ××××
# ××××可以备注为自己想要在项目中显示的邮箱
另外还有一些可以设置的
这里解释以下关于config:
Git 提供了一个叫做 git config
的工具(译注:实际是 git-config
命令,只不过可以通过 git
加一个名字来呼叫此命令。),专门用来配置或读取相应的工作环境变量。而正是由这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
-
/etc/gitconfig
文件:系统中对所有用户都普遍适用的配置。若使用git config
时用--system
选项,读写的就是这个文件。 -
~/.gitconfig
文件:用户目录下的配置文件只适用于该用户。若使用git config
时用--global
选项,读写的就是这个文件。 - 当前项目的 Git 目录中的配置文件(也就是工作目录中的
.git/config
文件)ÿ