您的位置:首页 > 其它

Git 常用命令总结

2017-08-17 14:36 204 查看
详细教程请参考:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

//创建ssh key
ssh-keygen -t rsa -C "mail@mail.cn"  
生成后的秘钥在用户目录的.ssh文件夹里,有id_rsa、id_rsa.pub两个文件。将公钥id_rsa.pub添加到github或gitlab的sshkey中

//查看仓库状态
git status

//自远程库下载到本地指定仓库
git clone git@github.com:user/demo.git path

//将针对指定文件的修改置入暂存区stage
git add file
//将本次修改的全部文件置入暂存区stage
git add .
//add后提交 message说明  置入版本库
git commit -m "message"

//一次性执行add .,commit
git commit -am "message"

//自远程仓库更新文件到本地
git remote update

//合并代码
git rebase
//将指定远程分支合并到本地  
git rebase origin/master

//将本地库推送到远程  -u 首次推送
git push origin master

//将当前修改置入stash中
git stash
//将stash中的修改取出到当前文件中
git stash pop
//删除stash中的修改
git stash drop

######拉取新分支
基于远程release分支拉取新分支
$ git remote update
$ git checkout -b feature-{feature_name}-{date} origin/release //创建本地feature-{feature_name}-{date}分支,跟踪远程release分支:
$ git push -u origin feature-{feature_name}-{date}
如果上次的分支在维护过程中,release中其它分支合并的代码,则需rebase 远程release分支
先把本地分支与远程同步
$ git remote update
$ git rebase feature-{feature_name}-{date}
然后执行
$ git rebase origin/release
执行过程中,如果遇到冲突,可以使用idea工具resolve Conflicts
git add .
git rebase --continue

rebase后,可以在当前基础上新建分支,然后push到远程
git checkout -b feature-{feature_name}-{new date}
git push -u origin feature-{feature_name}-{new date}

最后,在适当时候发送合并请求 merge request

######撤销push到远程的一组操作
1、先将本地操作回退到指定版本
git reset --hard <版本号>
2、将本地的修改强行push到远程
git push origin <分支名> --force

######撤销add
git reset HEAD 撤销上一次add 里面的全部内容
git reset HEAD  XXX/XXX/XXX.java 撤销指定文

######撤销commit
1、首先根据git log 查找到要回滚的commit_id
2、撤销
git reset  commit_id (回退到指定的节点   且保留提交的修改内容)     
git reset –hard commit_id  (回退到指定的节点, 但提交的修改内容并未保留)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: