git 基础
流程
- 将Git的一个存储库克隆为工作副本。可以通过添加/编辑文件修改工作副本。
- 如有必要,还可以通过让其他开发人员一起来更改/更新工作副本。在提交之前查看更改。
- 提交更改:如果一切正常,那么将您的更改推送到存储库。
- 提交后,如果意识到某些错误并修改错误后,则将最后一个正确的修改提交并将推送到存储库。
设置默认打开的编辑器
git config --global core.editor emacs
初始化 git 配置
git config --global user.name "ahKevinXy"
git config --global user.email "2502329620@qq.com"
--global 对登录用户所有仓库有效
--local 对单独项目仓库有效
--system 对系统所有用户有效
保存用户名
# 默认15分钟
git config --global credential.helper cache
# 设置时间
git config credential.helper 'cache --timeout=3600'
# 长期保存
git config --global credential.helper store
git config credential.helper store
# git push 超过100M解决办法
git config http.postBuffer 524288000 # (500M)
显示配置
# 获取配置
git config --list --local
git cofig --list --global
git config --list --system
清除配置
git config --unset --local user.name # user.email
配置的优先级
local>global>system
克隆仓库
git clone xxxxx
已有文件夹或仓库
cd existing_folder
git init
git remote add origin XXXXX.git
git add .
git commit
git push -u origin master
导入代码库
git clone --bare https://git.example.com/your/project.git your_path
cd your_path
git remote set-url origin xxxx.git
git push --mirror
删除分支
信息
在删除分支的时候,我们会使用git branch --delete dev来执行.有时还会通过缩写git branch -d dev来代替,使用中我们发现还有git branch -D dev的写法,他们有什么区别呢?
-
-d是--delete的缩写,在使用--delete删除分支时,该分支必须完全和它的上游分支merge完成(了解上游分支,可以点击查看链接),如果没有上游分支,必须要和HEAD完全merge
-
-D是--delete --force的缩写,这样写可以在不检查merge状态的情况下删除分支
-
--force简写-f,作用是将当前branch重置到初始点(startpoint),如果不使用--force的话,git分支无法修改一个已经存在的分支.
# 删除本地分支
git branch --delete dev
# 删除远程分支
git push origin --delete branch
# 删除追踪分支
git branch --delete --remotes <remote>/<branch>
切换tags
# 查看tag
git tag
# 切换到对应tag
git check tag_name
# tag 相当于快照 不能在上面进行修改 修改需要重新切分支进行开发
git checkout -b branch_name tag_name