git常用命令

git的常用命令

git配置用户名和邮箱地址
git config --global user.name “your_user_name”
git config --global user.email your_email@domain.com
git config --list 查看配置信息

 

创建+提交
git init 初始化本地仓库
git add <filename> 推送指定文件到暂存区
git add . 推送到暂存区
git stasus 查看工作目录和暂存区状态
git commit -m ‘注释’ 提交到本地仓库(包含本次提交的注释)
git log 可以看到完整的日志信息

 

 

文件修改与提交
git commit -am '注释' (直接从工作区提交到本地仓库)
git add .
git commit 不加注释进入加注释模式 i进入编辑模式
按esc键 wq(保存并退出)
git diff HEAD -- <filename> 查看工作区和本地仓库不同地方
--- 表示变动前的文件
+++ 表示变动后的文件
@@-1,2 +1,3
@@:减号表示第一个文件
"1"表示 第一行,"2"表示连续2行
同样
"+1,3"表示变动后成为第二个文件从第1行开始连续的3行

暂存区文件的提交与撤销
git status 查看提示和状态
git restore --staged <filename> 移除暂存区文件
git reset HEAD <filename> 取消上一次的操作

 

版本回退
git log 查看日志信息
git reflog 查看所有的日志(防止回退之后日志不全)
git log --graph--pretty=oneline 以图表的方式查看日志
git log --pretty==oneline 只显示提交的id和注释
git reset --hard HEAD^ 回退一个版本
git reset --hard HEAD^ 回退二个版本
git reset --hard HEAd~n 回退n 个版本
git reset --hard '唯一标识'
lunix中的拷贝ctrl+insert
lunix中的粘贴shift+insert

 

文件删除
git ls-files 查看本地仓库的文件目录
先在本地工作区删除
git checkout -<filename> 把工作区已经删除,本地仓库中存在的文件
恢复到工作区

git add <to_be_deleted_filename>
git commit -m '注释'

git rm -<filename> 删除工作区和本地仓库中的文件

 


远程仓库(github)
下载
插件Octotree -- github
git clone '网址' https瞎子啊

ssh下载
在git bsah中输入 生成秘钥
ssh-keygen -t rsa -C '邮箱账号'
根据界面查找目录下的公钥
复制公钥带github中
setting -ssh 粘贴 添加就可以了
ssh -T git@github.com


远程仓库推送master
git branch -M master切换分支
git remote add origin <ssl or https> 绑定远程仓库
git push -u origin master 推送到远程仓库 提交的是完整的本地仓库记录

本地修改+远程提交(已经提前绑定远程仓库)
git add .
git commit -m '注释'
git push


git分支操作
git checkout branch 切换到指定分支
git checkout -b new_branch 创建并切换到新建分支
git branch -d branch 删除指定分支
git branch -D branch 强制删除指定分支
git branch 查看所有分支 带*的是当前所在的分支
git merge branch 合并分支(先切换到master分支上再进行合并)
git branch -m|M oldbranch newbranch 重命名分支
-M:如果分支已经存在,强制重命名分支

分支push和pull操作
git branch -a 查看本地和远程分支
git push origin branch_name 推送本地分支到远程分支
git push origin :remote_branch删除远程分支(本地分支还在保留)
gir checkout -b local_branch origin/remote_branch
拉取远程分支并在本地新建分支
git fetch 获取远程仓库最新状态

 

冲突(同一个文件-同一行出现不同)
分支操作冲突出现与解决
处理后重新提交

多人协同操作冲突
git pull 拉取远程代码
然后再次提交

 


标签管理
git tag tag_name 标签默认为HEAD的打上标签
git tag tag_name 唯一标识 为指定的文件打上标签
git tag -a tag_name -m 'xxx' 添加标签并指定标签信息
git tag -a tag_name 唯一标识 -m 'xxx' 添加标签并指定标签信息
git tag 查看所有标签
git tag -d tag_name 删除一个本地标签

git push origin tag_name 推送本地标签到远程
git push orign --tags 推送全部标签到远程
git push origin :refs/tags/tag_name 删除一个远程标签

git pull origin tag_name 拉取指定标签下的

 


idea下的git操作
.ignore

 

上一篇:git 常用命令


下一篇:Git flow 自动化发布