查看
git status 查看状态
Gitk 界面各个版本查看
添加
Git add filename 添加指定文件
Git add . 操作未暂存的文件
Git add -A 操作所有文件 包括删除的文件
提交
Git commit -m ‘此节点修改的描述’
Git commit –amend -m ‘修改最近一次提交的数据’
回退
Git reset head ‘filename’ 将文件从已暂存中移除到位跟踪
Git revert ‘某一个版本的id’返回上一个版本
需求 :在我提交的版本之前有两个别人提交的版本,只想把我刚刚提交的版本上到测试,而另外两个版本不上
Git log 查看日志 找到对应的那两个版本的id
Git revert id1 (作为一次新的提交)
Git revert id2
Git push --- 此时上测试的话就可以构建了
构建之后 git log 找到revert的两个id
Git revert id3
Git revert id4
Git push -这样就回来了,相当于颠倒了顺序提交;
撤销或查看分支
Git checkout . 撤销本地所有修改
Git checkout filename 撤销本地未add的指定文件
Git checkout 分支名 切换到指定分支
Git checkout -b branchName 切换(无时创建)本地分支
Git branch -a 查看所有分支
Git branch -r 查看远程风格之
Push远程
Git push origin branch提交到远程branch分支
需求:本地develop分支代码修改完 直接 git push 提交到了develop分支,想再将代码提 交到master分支
Git checkout master
Git merge develop 将develop分支合并到master分支;
Git push
暂存
Git stash save
Git stash pop
需求:本地修改不想暂存或推到远程,
git stash save
git pull拉取远程代码;
git stash pop 注意此过程可能存在代码冲突
将代码提交到远程,直接git代码提交一样
初始化一个仓库之后会什么命令都出错,可以手动更新一下,具体操作如下:
一个空仓库申请过来之后:
git init ---- git remote add origin git仓库的地址
1 git clone @地址
2 手动更新git fetch origin
3 git branch -r(或者-a 代表本地和远程的所有分支)
4 创建或切换远程分支 git checkout -b develop
从远程拉代码,不同分支
1 git clone **
2 cd 项目目录
3 git checkout -b develop origin/develop 进入目录后默认为master分支,此句将远程develop拷贝到本地develop分支,并从master分支切换到develop分支上
克隆一个带子模块的项目
这里你将克隆一个带子模块的项目。当你接收到这样一个项目,你将得到了包含子项目的目录,但里面没有文件:
$ git clone git://github.com/schacon/myproject.git
Initialized empty Git repository in /opt/myproject/.git/
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (6/6), done.
$ cd myproject
$ ls -l
total 8
-rw-r--r-- 1 schacon admin 3 Apr 9 09:11 README
drwxr-xr-x 2 schacon admin 68 Apr 9 09:11 rack
$ ls rack/
$
rack目录存在了,但是是空的。你必须运行两个命令:git submodule init来初始化你的本地配置文件,
git submodule update来从那个项目拉取所有数据并检出你上层项目里所列的合适的提交:
详细的与npm对比 如下网址:https://blog.csdn.net/Smallsun_229/article/details/80721928
代码拉取
git pull [--rebase] 加上--rebase 会使代码提交记录整理(按时间顺序)
git pull --rebase origin master 拉取指定分支,
查询git提交记录或某个文件的修改记录
git log 查询git提交的记录
git log -p ‘文件名’ 查询某个文件
git reset head ‘文件名’ 将文件从已暂存中移除到未跟踪状态
git reset gitId [--hard|soft|mixed(default)]回退到指定的某一个版本
它本身做的事情就是重置HEAD(当前分支的版本顶端)到另外一个commit