Git 常用命令总结

详细教程请参考:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

//查看当前用户
git config user.name
git config user.email

//切换账号
git config --global user.name "Your_username"
git config --global user.email "Your_email"

 

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

//如果同时存在多个git账号,则在提示后输入新的路径,如下
Enter file in which to save the key (/c/Users/user/.ssh/id_rsa): /c/Users/user/.ssh/id_rsa_newPath

//默认SSH只会读取id_rsa,所以为了让SSH识别新的私钥,需要将其添加到SSH agent,使用如下命令:
ssh-add ~/.ssh/id_rsa_newPath

如果报错:Could not open a connection to your authentication agent.无法连接到ssh agent
可执行ssh-agent bash命令后再执行ssh-add命令
然后将公钥添加到git账号中即可

在.ssh文件夹下,创建或编辑config文件
###gitlab
Host 域名或ip地址
Hostname whatever
User grant
PreferredAuthentications publickey
IdentityFile .ssh/id_rsa_gitlab


 

//查看仓库状态
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 branch -a 

//切换分支
$ git checkout -b feature-{feature_name}-{date}

//如需本地创建分支,并跟踪远程release分支:
$ git checkout -b feature-{feature_name}-{date} origin/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  (回退到指定的节点, 但提交的修改内容并未保留)

######修改密码后

//重置密码
git config --system --unset credential.helper

//存储新密码;在下次录入用户名、密码后会存储新的密码
git config --global credential.helper store
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值