-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
【GIT】常用GIT知识点 #14
Comments
如何把本地的git仓库,推送到github仓库(远程仓库)上
可能遇到错误
问题(Non-fast-forward)的出现原因在于:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有2个选择方式: 强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容
设置好远程仓库后, 后面的提交, 需要使用
|
如何把本地分支提交到远程分支//本地切换到 zx-demo1 分支,(git 执行的命令,都是表示在当前分支下 起作用的)
git checkout zx-demo1
...
//提交到远程 origin 仓库 的 master 分支上
git push origin master
//查看远程仓库的列表
git remote -v
//提交到 远程仓库 upstream zx-demo1 分支上
git push upstream zx-demo1 |
更新远程分支代码如果本地分支有 没有 commit 的, git pull 会报错。 让你先把本地的提交了。 git stash
git pull 远程仓库 远程分支名
git stash pop stash@{0}
|
git常用命令脑图
|
拉取远程分支到本地分支或者创建本地新分支git fetch origin branchname:branchname
git checkout origin/remoteName -b localName
|
GIT 合并多个 commit选择需要合并到哪一个commitgit rebase -i HEAD^ //这里也可以是commit的HEAD 编号 确定合并的方式# 回车之后,会出现以下内容
# 除了第一个 为 pick ,其他几个pick 全部修改成 squash (其他命令也可以,命令列表看下面提示)
1 pick 52d5383 添加add的說明
2 squash 1838a23 test123
3 squash f2ac632 test git rebase -i
4 squash b4b0529 test2 修改新合并成的 commit 备注# 再次回车,需要填写合并之后 commit 的 备注
# vim 操作自行百度
# vim 操作, 按 i 键,修改 commit的备注内容, 然后 按 ESC键, 再按 shift+: ,在按 wq 保存退出 , ok 成功 |
如何查看指定文件的 提交历史
# 查看指定文件的提交记录
git log --pretty=oneline <文件名>
# 查看指定文件在某个版本修改的内容
git show <git提交版本号> <文件名> |
同一个 commit ,如何提交到两个分支上# 1. 先提交到一个分支
git commit -am 'commit some content'
git push
# 2. 查看刚commit 的 id,复制出来
git log
# 3. 切换到另外一个分支,然后增加刚才的commit 提交内容
git co -b new_branch
git cherry-pick [commit-id]
git push
# 4. ok, 在两个分支上都有 最新的commit, 然后就可以提交两个Merge Request |
git pull --rebase |
git revert 后在merge导致代码消失问题描述:
问题原因preonline 分支的commit 记录
A 分支commit
这个是把A分支的代码 再次 merge 到 preonline 中,会被后面的 A revert 给『消除掉了』,因为 A revert 的 commit 时间是在 A commit 之后,因此 preonline 会认为 A revert 才是最新的提交结果。 解决方案直接在 git revert --no-commit revert_version_of_mine
git commit -a -m 'revert revert'
git push
参考文章 |
The text was updated successfully, but these errors were encountered: