Git介绍
- Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理项目文件和代码。
Git基本操作流程图
git操作流程.jpgGit基本命令
- Git基本配置操作
命令 | 示意 |
---|---|
git init (project-name) | 将当前目录初始化为git仓库 |
git config --list | 显示当前配置信息 |
git config --global user.name "名称" | 配置全局名称 |
git config --global user.email "邮箱" | 配置全局邮箱 |
ssh-keygen -t rsa -C "邮箱" | 生成ssh key |
- Git代码操作
命令 | 示意 |
---|---|
git clone (地址) | 下载远程仓库的代码到本地 |
git pull origin 分支名称 | 获取当前分支的最新代码 |
git add . | 添加以当前文件夹为父目录的所有文件为git所标记,添加到暂存区 |
git commit -m "备注" | 提交被git标记的文件到本地仓库, -m为添加备注信息 |
git push origin (分支名称) | 推送对应分支所commit的文件到远程仓库 |
git rebase (分支名称) | 使当前分支与填写分支的文件保持一致 |
git reset (版本号) --hard | 回滚到当前分支对应的版本号 |
git rm --cached [file] | 删除暂存区的该文件,但该文件会保留在工作区 |
git stash | 把当前未提交的修改暂存起来,让仓库还原到最后一次提交的状态 |
git revert -n 版本号 | 回滚到某个commit |
- Git分支操作
命令 | 示意 |
---|---|
git branch | 列出所有本地分支 |
git branch -r | 列出所有远程分支 |
git branch -a | 列出所有本地分支和远程分支 |
git branch [branch-name] | 新建一个本地分支 |
git checkout -b [branch-name] | 新建一个本地分支并切换到该分支 |
git push origin [本地branch]:[远程branch-name] | 先建立本地分支,再推送本地分支到远程并创建新的分支 |
git checkout [branch-name] | 切换到对应分支 |
git checkout - | 切换到上一个分支 |
git branch -d [branch-name] | 删除本地分支 |
git push origin --delete [branch-name] | 删除远程分支 |
git merge --no -ff -m "备注" | 合并分支,(有两种方式:第一种--squash,会进行commit合并。第二种:--no -ff不会进行commit合并,推荐使用) |
git pull origin master --allow-unrelated-histories | 出现Push to origin/master was rejected问题后执行的操作 |
- Git tag操作
命令 | 示意 |
---|---|
git status | 显示所有变动的未提交的文件 |
git logs --stat | 显示当前分支的提交历史和commit发生的变更文件.--stat表示展示出commit的变更文件 |
git shortlog -sn | 显示所有提交过的用户,按提交次数排序 |
git blame [file] | 显示指定文件是什么人在什么时间修改过 |
git diff | 显示暂存区和工作区的区别 |
git diff --shortstat "@{0 day ago}" | 显示你今天写了多少行代码 |
- Git 远程同步
命令 | 示意 |
---|---|
git fetch [remote] | 下载远程仓库的所有变动 |
git remote -v | 显示所有的远程仓库 |
git push [remote] --all | 推送所有分支到远程仓库 |
git remote set-url origin 你的远端地址 | 修改远程仓库地址 |
- Git 撤销
命令 | 示意 |
---|---|
git checkout [file] | 恢复暂存区的指定文件到工作区 |
git checkout [commit][file] | 恢复某个commit的指定文件到暂存区和工作区 |
git checkout . | 恢复暂存区的所有文件到工作区 |
- 其他
命令 | 示意 |
---|---|
git archive | 生成一个可供发布的压缩包 |
网友评论