git常用命令


git  checkout branchname
* 切换分支,前提是当前分支是干净的,如果有未提交的修改就不能切换,先stash或者commit后再切换。

git branch  -a查看所有分支

git branch  -r查看远程分支

git branch  -d  branchname 删除分支

git branch devel
* 创建分支,这个方式新建的的分支,是拷贝了当前的分支的,和当前分支的版本库都一样,就连工作区的内容都是一样的。
git checkout -b devel

* 创建分支,(新建一个分支名叫devel,是复制于当前分支,并切换到devel分支
git   checkout   -b   branchname   origin/branchname
* 基于远程库创建分支


git rebase origin/devel

* 与远程的一个分支(这个远程分支首先要通过git fetch拉到本地的),进行合并操作。
* git rebase合并方式的好处,就是不会出现merge造成的分支交叉的情况,版本库增长很清晰。
* 比如当前分支是1,6,7,远程分支是1,2,3,用git rebase合并后,当前分支变为1,2,3,6,7。
* git rebase原理,就是把被合并的分支复制一份,把当前分支的新提交部分,重新依照复制的分支去新规划出差异。

git branch --set-upstream-to origin/devel
* 与远程分支建立连接
* 例子
    * taiwudeMacBook-Pro:advanced taiwu$ git branch --set-upstream-to origin/master
    * Branch master set up to track remote branch master from origin.




git  reset  c93a3154298f2

* 根据版本号回退到某个版本,*这时候的版本是这个版本号的,但是差异文件都还在,要是完全回到干净的版本,还得git  checkout  - -  .
git   reset  —hard  c93a3154298f2
* 加上- - hard进行回退到任意版本号,版本库都是完全干净的。
* 如果当前版本下工作区有未提交的差异,这么做,这些差异修改就都没了!!!。
get  reset  —hard   devel
* 假如当前分支是master,上面命令,就是用devel分支完全覆盖master分支。
git reset --hard origin/yl
* 假如当前分支是y1,上面的命令,就是用远程库y1分支,完全覆盖本地的y1分支。

git log advanced/common/models/User.php
* 查看此文件的所有改动历史,历史提交记录(查询某个指定文件的提交历史记录)
* git log --pretty=oneline advanced/common/models/User.php加上参数后,显示的就是每条提交commit id
* git  log  <文件名>  查看一个文件,所有提交历史




git show 632d8154f69ec7a1160db66424cbb8be75bf7e98 advanced/common/models/User.php

* git show <git提交版本号> <文件名>是用来查看具体文件具体版本号下,文件的修改内容。




git show   632d8154f69ec7

* 查看一个commit中,所有提交的内容
* git show  <git提交版本号>


git push —force origin master
场景一: 删除远程库的某次错误提交
远程库上面有多个commit:5、4、3、2、1。
但是4,5两个版本都是我本地修改后提上去的,是错误的版本,我想清除掉。

操作步骤是:
1. git  reset  f5gr312 (f5gr312为commit 3 的版本号, 回退到3这个版本)
2. git  checkout  - -  .   (回退到3了,但是修改都还在,要清空工作区)
3. git  push  - -force  (强行推送至服务器)

说明:
这个操作,实际是本地先回退到之前的一个版本。再把这个版本强行推送到远程对应的分支。那么,远程库 就跟你推上去的版本库一致。



git  rm  -r  —cached  ignore_file
* 文件已经commit了,再加入.gitignore是无效的,所以需要删除缓存:


git rebase -i HEAD~3
* 合并多个提交


git 不依赖于原来分支创建新分支(来自51论坛)
不知道大家使用git作为代码管理工具的机会多不多,现在公司就是使用git作为代码管理工具;git真的是不错的代码管理工具,而且越使用越觉得方便

git里面很多功能,今天记录其中一个功能

在项目中修改bug的时候,经常遇到正在修复一个bug,然后又要求你去解决另外一个bug的问题。那么怎么保存之前的修改呢?

在git里面可以使用分支来完成这个工作

1、在a分支上的修改你可以先git stash,隐藏你在a分支上的修改
2、然后基于服务器创建b分支 例如git checkout -b b origin/branch,这时候到b分支上bug fixed并提交;这部很重要,要基于服务器来创建,如果你基于a分支来创建,那么会包含a分支的修改。这显然不是我们希望的结果。
3、然后git checkout a回到a分支,
4、然后git stash pop,继续刚刚a分支的修改


这样我们甚至可以为每个bug创建一个分支,不会互相干扰;而且只有一份代码!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python Git常用命令大全: Git是现代化的版本控制系统,常被用于软件开发,协作和管理。它允许在开发过程中创建和管理不同的版本,跟踪文件的更改,以及支持团队合作。Python则是一种广泛应用于开发Web应用程序以及数据科学和人工智能领域的高级编程语言。在使用Git时,Python的代码可以与Git进行集成。这里是Python Git常用命令的大全: 1. git init:初始化一个新的 Git 仓库。 2. git clone:从现有的 Git 仓库克隆项目,可以是本地仓库或远端仓库。 3. git add:将文件添加到 Git 仓库中。git add . 可以添加所有更改。 4. git commit:将所有已添加的文件提交到本地 Git 仓库中。 5. git status:查看当前工作目录中 Git 仓库的状态。 6. git log:查看提交记录。 7. git push:将本地 Git 仓库的更改推送到远端仓库。 8. git pull:将远端 Git 仓库的更改拉到本地仓库。 9. git branch:创建新的分支。 10. git checkout:切换分支。 11. git merge:将一个分支的更改合并到另一个分支。 12. git revert:撤销一个提交。 13. git rebase:将一个分支的修改合并到当前分支。 14. git config:配置 Git。 15. git remote:管理远端仓库。 这是Python Git常用命令的大部分命令,但这并不是全部。在使用Git和Python时,这些命令应该是最为重要的。无论是在个人项目中还是团队合作中,这些命令会让你更加高效地使用Git,并保护你的代码免遭不可挽回地灾难。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值