环境配置
github加速器
https://cloud.tsinghua.edu.cn/d/df482a15afb64dfeaff8/
配置ssh
# 查看git版本
git --version
# 如果没有安装
# ubuntu
sudo apt-get install git
# centos
sudo yum install git
# 检查用户名和邮箱是否配置
git config --global --list
# 如未配置,按照下面进行配置
git config --global user.name "这里换上你的用户名"
git config --global user.email "这里换上你的邮箱"
# 然后生成密钥
ssh-keygen -t rsa -C "这里换上你的邮箱"
# 根据提示,按3次或者4次enter
# 查看公钥
cat ~/.ssh/id_rsa.pub
# 将下面红框中全部粘贴到GitHub的ssh中
以gtest的克隆为例
# 先创建一个GitHub目录,再在里面clone,更好管理
mkdir github
cd 进入该目录
git clone https://github.com/google/googletest
cd googletest
mkdir build
cd build
cmake ..
make
sudo make install
git拉取提交代码
一般来说是拉取一个仓的代码,这个仓代号 origin,也可以拉取一个仓后再同个目录下拉取另一个仓,另一个仓就可以命名 origin2 这样,然后就可以将origin2的代码 cherry-pick 到origin,但是一般不同仓的代码不同,这种骚操作一般用不上
git clone 仓库地址
git status
git st # 简写
# 拉取代码,并合并到本地分支
git pull 远端分支
# 拉取代码,不合并到本地分支
git fetch 远端分支
# 分支
# 切换分支
git checkout <branch>
# 创建并切换到新分支
git checkout -b <branch>
# 将本地分支同步远端分支
git branch --set-upstream-to origin/master
git branch --u origin/<远端分支名> # 简写
# 上面的可以合并为一条
git checkout -b <本地分支名> origin/<远端分支名>
# 提交代码
git commit -m '提交说明'
git push
# 接着上一次的commit继续提交
git commit --amend --no-edit
git push -f # 强推
# 拉取远端代码,将当前分支同步远端分支
git fetch --all
git reset --hard origin/xxx
# 重新选择同步的分支
git rebase
# 查看日志
git log