git的一些操作

git新建分支

git branch dev-xxx
git checkout dev-xxx
等同于:
git checkout -b dev-xxx

// 同步到远程
git push origin dev-xxx

git合并指定commit

git log //查看提交的日志,复制要合并的那个分支的commit id
git checkout master // 切换到要合并的分支上
git cherry-pick COMMIT_ID//复制要合并的commit id
git push origin master //提交到远程分支


git cherry-pick --abort // 取消cherry-pick

git修改分支名

1.重命名分支
git branch -m oldBranch newBranch

如果修改的分支已经推送到远程,则继续执行下面的操作:
2.删除远程分支
git push --delete origin oldBranch

3.上传新命名的本地分支
git push origin newBranch

4.本地分支与远程分支关联
git branch --set-upstream-to origin/newBranch

3、4部命令等同于:
git push -u origin newBranch

git撤销merge

在当前分支
git reset --hard commit_id
此时,本地为回退分支,远程仍为被改变的分支
git push origin HEAD --force
【git push -f】

git删除分支

  1. 删除本地分支
    git branch -d <local_branch>

-d改成-D强制删除

  1. 删除远程分支
    git push <remote_name> -d <remote_branch>

先列出所有远程分支:
git branch -r
在这里插入图片描述
git push origin -d <remote_branch>

从一个git仓库迁移代码到另一个git仓库

B是一个空仓库,除了默认的master分支,没有其他分支。把A的分支迁移到B.

  1. 进入A工程的branch1分支上,获取最新代码
  2. git remote ⇒ origin
  3. git remote add origin2 master(origin2可以替换成其他)
  4. git remote set-url origin2 xxx(xxx是B仓库的地址ssh)
  5. git checkout -b branchB1(branchB1是基于A工程branch1建的新分支)
  6. git push origin2

迁移多个分支重复1,5,6操作就行

git报错:git Permission denied, please try again.

  • 检查SSH Key是否存在
cd ~/.ssh
ls
  • 获取SSH Key(如果存在id_rsa.pub 或 id_dsa.pub 文件,跳过此步。)
    如果不存在,生成:
  1. 先查看git邮箱地址
    git config --list
  2. 再生成SSH Key
    ssh-keygen -t rsa -C “your_email@example.com”
  • 将公钥复制到git页面profile setting > SSHKeys中
    cat ~/.ssh/id_rsa.pub

git报错:fatal: refusing to merge unrelated histories

在你操作命令后面加–allow-unrelated-histories

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值