git在工作中的使用-学习浅记-git常用命令-解决90%操作
1.git的学习官网 git-scm.com/book/en/v2
2.change patch set submit 基本名词的概念
3.直接介绍命令
列出当前存在的分支
git branch
切换分支
git checkout <branch> //git checkout <file_name>此条亦可切换单个文件,比如本地x文件已修改,可以checkout x相当于把库中x文件覆盖本地文件即为撤销本地已修改文件
查看当前分支的最近更改
git log
切换当前分支的状态 版本控制 回退版本
git reset --hard <hash_value> //回退版本 在git log后得到hash值
git checkout <HEAD^> //checkout亦可以回退,这里引入一个HEAD的概念,详解见下
更新代码
git status //当前本地和仓库代码状态 及其比较
git pull //可选择是否加分支名
提交代码
git status
git add <files> //add
git commit -m "" // 引号内加注释
git push origin HEAD:refs/heads/<branch> //提交branch
git push origin HEAD:refs/for/<branch> //提交change
修改已经提交但未被merge的代码
git add <files>
git commit --amend
git push
已经提交的add的但暂时又不想提交的代码
git stash <file> //相当于暂时隐藏这些add文件
git stash pop <file> //把它从小黑屋中pop出来
4.一些高级的命令和一些解释
HEAD的解释与理解
HEAD 是一个对当前检出记录的符号引用 —— 也就是指向你正在其基础上进行工作的提交记录。
HEAD 总是指向当前分支上最近一次提交记录。大多数修改提交树的 Git 命令都是从改变 HEAD 的指向开始的。
HEAD 通常情况下是指向分支名的(如 bugFix)。在你提交时,改变了 bugFix 的状态,这一变化通过 HEAD 变得可见。
强行切换HEAD与分支
git branch -f <branch_1_name> <branch_2_position> //把分支1从现在的地方切换到第二个地方
给几个例子
git branch -f bugfix HEAD^^ //把bugfix分支从当前位置移到HEAD向上两格位置
git branch -f bugfix HEAD~2 //把bugfix分支从当前位置移到HEAD向上两格位置
git branch -f master <hash_name> //把master分支从当前位置移到hash值位置
git checkout <hash_name> //把HEAD从当前位置移到hash位置 这个语句可以更好的理解HEAD 即当前工作的地方 而与各个分支无关
git reset和git revert
git reset 是撤销更改 回退 即 git reset <where you want>
git revert 是添加新增的change并把该分支在该change下改变成之前某个版本一模一样的 即 git revert <itself name>
5.工作中需要用到的其它命令
cd /tmp/zID
git clone
git checkout <branch>
source setup.sh -dD
......
sapc_restore <Commit_ID>
tinyFT
select Test Suite
compile m current c
execute y case number 2
6.https://learngitbranching.js.org/?locale=zh_CN