Git基本操作

2025-06-04 22:23:00
丁国栋
原创 49
摘要:本文记录和汇总Git的一些基本操作,持续更新中。

Git 基础设置

git config --global --get user.name
git config --global --get user.email

git config --global user.name "dingguodong"
git config --global user.email "dingguodong@thedf.cc"
git config --global pull.rebase false
git config --global core.editor "vim"
git config --global diff.tool vimdiff

#不对0x80以上的字符进行quote,解决git status/commit时中文文件名乱码
git config --global core.quotepath false

# 忽略文件权限的变更
git config core.fileMode false

# ------------------------------------------------------------
git config --get user.name
git config --get user.email
git config --get core.editor

git config --global --get pull.ff
git config --global --get pull.rebase
git config --global --get merge.ff

# repo 级别

cd my/example-repo-dir
git config user.name "dingguodong"
git config user.email "dingguodong@thedf.cc"
# ------------------------------------------------------------

# 信任证书
git config --global http.sslverify false

# 查看当前的remote

git remote -v


# 添加一个名字为public的remote

git remote add public https://git.thedf.cc/my/example.git

# 从公共库下载所有更改到本地

git fetch --all


# 将本地私有库与公共库合并,注意rebase只能用于本地库,不能用于远程库

git rebase public/master

注: 这git fetch --all 和 git rebase public/master 两步也可以使用 git pull public master,缺点是会产生一次Merge的commit。

# 查看某个作者的提交
git log -p --author=dingguodong

# 清除本地存在但远程上已经删掉的分支
git remote prune origin

# 删除本地分支
git branch -d feature/chris/cicd

# 恢复工作区内的文件到版本库版本

git checkout /path/to/file


# 从远程分支检出到本地分支
git checkout -b release --track origin/release

# 在本地创建一个新分支,然后推送到远程

git checkout -b sprint/1989
git push --set-upstream origin sprint/1989


裸仓库转换为工作区仓库

如果我有一个git仓库的raw数据,这个git仓库raw数据是服务器端的git仓库(通常是一个裸仓库 bare repository),如何把它转换为工作区可用的仓库?

方法1(推荐):git clone /path/to/your/bare/repo.git new_working_dir

方法2:在一个空的仓库中添加远程 git remote add origin /path/to/your/bare/repo.git 后检出。


发表评论
博客分类