Git的常用命令

174 阅读2分钟

克隆指定分支代码

git clone -b 分支名字 Git地址        //克隆指定分支代码

拉取远程分支,如果看不到git远程分支,先用fetch命令更新remote索引

git fetch
git checkout -b 本地分支名 remotes/origin/远程分支名

查看所有分支

git branch  //查看本地所有分支
git branch -a      //查看本地和远程所有分支
git branch -av    //查看所有分支和最新修改


Git合并某个分支的一个commit到另一个分支

例如要将A分支的一个commit合并到B分支

首先切换到A分支

//切换分支
git checkout A     
   
//查看commit
git log              

找出要合并的commit ID 例如286a1d6a15f9ade4b458b9a93eed70b0125173d

然后切换到B分支上

//切换分支
git checkout B       

//合并
git cherry-pick 286a1d6a15f9ade4b458b9a93eed70b0125173d

然后就将A分支的某个commit合并到了B分支了



Git使用reset版本回滚或者取消本次提交

回滚版本 git reset --hard commit_id

//回滚到某个版本
git reset --hard 8d722bb6e976f255f9c4c1bf9233c386d69ca5ed

//撤销本次提交并且撤销 git add .
git reset HEAD^

//撤销本次提交
git reset --soft HEAD^

git reset参数解释: --mixed 默认值,不删除工作空间改动代码,撤销commit,并且撤销git add . --soft 不删除工作空间改动代码,撤销commit,不撤销git add . --hard 删除工作空间改动代码,撤销commit,撤销git add . (用于版本回退)


Git删除文件
//同时从工作区和索引中删除文件。即本地的文件也被删除了。
git rm filename

//从索引中删除文件。但是本地文件还存在, 只是不希望这个文件被版本控制。
git rm --cached filename

//删除文件夹
git rm -r folder

git rm参数解释: --cached 从索引中删除文件。但是本地文件还存在, 只是不希望这个文件被版本控制。 -r 删除目录