基础设置

设置用户名和邮箱

1
2
git config --global user.email "xxx@outlook.com"
git config --global user.name "xxx"

设置代理

1
2
3
4
5
6
7
git config --global http.https://github.com.proxy http://127.0.0.1:58591 #单独为github设置代理

git config --global http.proxy http://127.0.0.1:58591
git config --global https.proxy https://127.0.0.1:58591 #全部git命令http代理

git config --global --unset http.proxy
git config --global --unset https.proxy #取消代理设置

创建git仓库

1
2
3
4
5
6
git init #初始化当前路径为git仓库
git remote add origin https://github.com/用户名/仓库名.git #添加远程仓库
#如果仓库搭建在自己的服务器上,使用下面代码
git remote add origin <用户名>@服务器ip:/仓库位置/仓库名.git
git checkout -b xxx #新建一个分支 xxx 并且切换到该分支
git checkout xxx #切换到 xxx 分支

“origin” 只是一个常用的命名约定,用于表示远程仓库的别名。实际上,你可以使用任何你喜欢的自定义名称来代替 “origin”。这个名称只是用来标识远程仓库的名称,方便你在后续的操作中引用它。所以,你可以根据自己的喜好和项目需求来选择一个有意义的名称作为远程仓库的别名。

提交常用命令

1
2
3
git add . #把当前目录所有修改添加到暂存区
git commit -m "" #把暂存区提交到当前分支
git push #推送到远程仓库

拉取常用命令

1
2
3
git clone root@1.1.1.1:/var/repo/hexo.git #拉取自建远程git仓库
git clone https://github.com/xxx/xxxx.git #拉取github仓库
git clone -b xxx https://github.com/xxx/xxxx.git #拉取指定分支

查询当前git状态常用命令

1
2
3
4
git branch -avv #查看所有分支
git remote -v #查看远程仓库
git branch --set-upstream-to=REMOTE_NAME/REMOTE_BRANCH_NAME #本地分支与远程分支的映射关系的建立
git remote show origin #命令可以显示关于远程仓库 origin 的详细信息,包括远程分支、本地分支与远程分支的关联关系以及远程仓库的 URL

重置本地仓库

使用以下命令删除所有未跟踪的文件:

该命令中的选项-f表示强制删除文件,-d表示删除未跟踪的目录以及其中的文件。

1
git clean -df

放弃所有本地更改并拉取远程仓库的代码。你可以使用git reset --hard命令来重置分支,并指定远程分支作为重置的目标。以下是完整的命令:

1
git fetch origin && git reset --hard origin/分支名

执行该命令后,它会先从远程仓库获取最新的提交记录,然后将本地分支重置为与远程分支一致的状态,丢弃所有本地的更改。最后,你可以使用git pull命令来拉取远程仓库的最新代码并进行合并:

1
git pull

执行上述两个命令后,你应该放弃了所有本地的更改,并将本地分支更新为与远程仓库一致的状态。记得在执行这些命令之前备份任何你想要保留的重要更改。

分支操作

1
2
3
4
5
git checkout origin 分支名 #切换分支
git checkout -b origin 分支名 #创建并切换分支
git branch -d 分支名 #删除本地分支
git push -d origin 分支名 #删除远程仓库的分支
git merge 分支名 #合并分支

回滚版本

1
2
git reset --hard commit_sha #将本地的状态重置为某次提交
git push origin HEAD --force #推送至远端