Git总结
Git总结
安装Git
# Centos
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
yum install git
获取本地仓库
# 1. 进入一个空目录,以test为例
cd test
# 2. 使用git init命令初始化
git init
# 3. 使用ll命令查看目录结构,出现.git目录即创建成功
ll
基础命令
git add # 工作区 -> 暂存区
git commit # 暂存区 -> 仓库
git status # 查看状态
git log # 查看日志
git reflog # 查看已删除的记录
git reset --hard commitID # 版本切换
# 制作忽略列表
touch .gitignore
vim .gitignore
git log拓展
--oneline # 简洁显示
--reverse # 逆向显示
--graph # 图表显示
--author=XX # 作者是XX的log
--before={Date} # 日期之前的log
--after={Date} # 日期之后的log
分支
git branch # 查看分支
git branch XX # 添加分支
git checkout XX # 切换分支
git checkout -b XX # 创建并切换分支
git merge XX # 合并分支
git checkout -d XX # 删除分支(有检查)
git checkout -D XX # 删除分支(无检查)
标签
git tag -a 版本号 -m 标签 # 指定标签信息命令
git tag -s 版本号 -m 标签 # PGP签名标签命令
Git+GitHub
git remote add [shortname] [url] # 添加远程仓库
# 生成密钥
ssh-keygen -t rsa -C "youremail@example.com"
# 后面的 your_email@youremail.com 改为你在 Github 上注册的邮箱
# 之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。
# 成功的话会在 ~/ 下生成 .ssh 文件夹,进去,打开 id_rsa.pub,复制里面的 key
# 回到 github 上,进入 Account => Settings(账户配置)
# 左边选择 SSH and GPG keys,然后点击 New SSH key 按钮,title 设置标题,然后粘贴在你电脑上生成的 key。
ssh -T git@github.com # 验证是否成功
# 之后在在Repository name 填入远程仓库名,其他保持默认设置
# 点击"Create repository"按钮,就成功地创建了一个新的Git仓库
git remote # 查看远程仓库
git fetch # 从远程仓库下载新分支与数据
git merge # 从远端仓库提取数据并尝试合并到当前分支
git push [alias] [branch] # 将[branch] 分支推送成为 [alias] 远程仓库上的 [branch] 分支
git remote rm XX # 删除远程仓库
搭建Git服务器
以Centos为例:
# 安装
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
yum install git
# 创建用户组和用户
groupadd git
useradd git -g git
# 创建证书登录
cd /home/git/
mkdir .ssh
chmod 755 .ssh
touch .ssh/authorized_keys
chmod 644 .ssh/authorized_keys
# 初始化Git仓库
# 首先我们选定一个目录作为Git仓库,假定是/home/gitrepo/S2J.git,在/home/gitrepo目录下输入命令:
cd /home
mkdir gitrepo
chown git:git gitrepo/
cd gitrepo
git init --bare S2J.git
chown -R git:git S2J.git # 修改权限和用户为git
# 克隆仓库
git clone git@IP:/home/gitrepo/S2J.git