Git 命令
大约 3 分钟
Git 命令
编译安装
官网下载:https://git-scm.com/downloads
下载完成后通过Xshell等工具将压缩包上传到服务器指定目录,我是上传到 /usr/local/src下的
解压到 /usr/local/src 目录下
tar -zxvf git-2.31.1.tar.gz -C /usr/local/src/
编译安装
#进入解压后的目录
cd /usr/local/src/git-2.31.1/
#执行编译安装
./configure --prefix=/usr/local/git
make
make install
设置环境变量
echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/profile
source /etc/profile
验证版本后是否正常
[root@honghua-centos-02 ~]# git --version
git version 2.31.1
若上述步骤初夏如下显示,则表示当前git为系统自动带git
[root@iZbp1flzt6x7pxmxfhmxeeZ git-2.31.1]# git --version
git version 1.8.3.1
卸载系统自带的git(前面如果执行了,这里不用在执行了)
#卸载系统自带git
yum remove git -y
#重新执行如下命令更新环境变量
source /etc/profile
#再次查看版本,如下表示OK
[root@honghua-centos-02 ~]# git --version
git version 2.31.1
常用命令
关联远程仓库
git remote add origin http://xxx.git
关联远程分支
git fetch origin
git checkout -b xxx origin/xxx
tag 分支关联
git fetch
# 查看tag列表
git tag
xx-v1
xx-v2
# 关联tag到新分支
git checkout xx-v1 -b tag-xx-v1
tag 分支切换(查看、做试验性的修改及提交)
git fetch
# 查看tag列表
git tag
git checkout $tag
git checkout $tag
注意:正在切换到 '$tag'。
您正处于分离头指针状态。您可以查看、做试验性的修改及提交,并且您可以在切换
回一个分支时,丢弃在此状态下所做的提交而不对分支造成影响。
如果您想要通过创建分支来保留在此状态下所做的提交,您可以通过在 switch 命令
中添加参数 -c 来实现(现在或稍后)。例如:
git switch -c <新分支名>
或者撤销此操作:
git switch -
通过将配置变量 advice.detachedHead 设置为 false 来关闭此建议
HEAD 目前位于 85c0641 error comment
git 基变
取消基变
git config --global pull.rebase false
git config --lobal pull.rebase false
基变操作
git merge master
# 合并后冲突,交互式变基操作正在进行中
# 解决冲突后
git rebase --continue # 以便 Git 继续处理变基的其余部分
# 再次merge master 正常,然后提交现有分支
还原
git log # 查询要还原的 commit id
git reset --hard $id
git 2.x centos.yum.rpm
# 1.设置下载源
yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm
# 2.安装
yum install git
配置命令
- git命令别名
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
git config --global alias.mg merge
- git用户配置--全局/局部(当前仓库有效)
// 全局有效
git config --global user.name 'name'
git config --global user.email 'name@domain.com'
cd /xxx/repo_dir
// 当前仓库有效
git config --local user.name 'name'
git config --local user.email 'name@domain.com'
git config --local --list
git config --global --list
命令问题
refname is ambiguous
git 克隆某个tag分支,本地无法基于创建新分支
警告:refname 'v4.3.2' is ambiguous.
致命错误:歧义的对象名:'v4.3.2'
git branch -m v4.3.2 localv4.3.2
git branch xxx