git-【九】基本常用命令

时间:2024-12-12 15:04:14

 mkdir:         XX (创建一个空目录 XX指目录名)

pwd:          显示当前目录的路径。

git init          把当前的目录变成可以管理的git仓库,生成隐藏.git文件。

查看所有分支:git branch -a
远程:git branch -r
查看本机:git branch
创建分支:git branch test
使用fetch获取:git fetch origin guorunhe_test
把分支推到远程分支:git push origin test  
切换分支:git checkout test
删除本地分支:git branch -d xxxxx
删除远程分支  
    git branch -r -d origin/branch-name  
    git push origin :branch-name
当前分支是master
    git checkout master
把issueFix中的内容Merge进来:
    git merge issueFix

二、git add

git add path 将文件或者目录提交到暂存区 其中add 与stage同义

  git 1.x

git 1.x new files Modified Files Deleted Files  

git add -A
[git add --all]

所有文件均提交到暂存区【包括新增,修改,删除】
git add . × 部分文件均提交到暂存区【包括新增,修改】
git add -u
[git add --update]
× 部分文件均提交到暂存区【包括修改,删除】

  git 2.x

git 2.x new files Modified Files Deleted Files  

git add -A
[git add --all]

所有文件均提交到暂存区【包括新增,修改,删除】
git add . 所有文件均提交到暂存区【包括新增,修改,删除】
git add --ignore-removal . × 部分文件均提交到暂存区【包括新增,修改】

git add -u
[git add --update]

× 部分文件均提交到暂存区【包括修改,删除】

git add -i [<path>] 查看<path>中被所有修改过或已删除文件但没有提交的文件,并通过其revert子命令可以查看<path>中所有untracted的文件,同时进入一个子命令系统

 git add -i
staged unstaged path
: +/- nothing branch/t.txt
: +/- nothing branch/t2.txt
: unchanged +/- readme.txt *** Commands ***
: [s]tatus : [u]pdate : [r]evert : [a]dd untracked
: [p]atch : [d]iff : [q]uit : [h]elp
What now>

  这里的t.txt和t2.txt表示已经被执行了git add,待提交。即已经添加到索引库中。
  readme.txt表示已经处于tracked下,它被修改了,但是还没有被执行了git add。即还没添加到索引库中。

  1、revert子命令
    可以通过git add -i的revert子命令(3: [r]evert)把已经添加到索引库中的文件从索引库中剔除。
    (3: [r]evert)表示通过3或r或revert加回车执行该命令。执行该命令后,git会例出索引库中的文件列表.
    然后通过数字来选择。输入"1"表示git会例出索引库中的文件列表中的第1个文件。
    "1-15"表示git会例出索引库中的文件列表中的第1个文件到第15个文件.回车将执行。
    如果我们不输入任何东西,直接回车,将结束revert子命令,返回git add -i的主命令行。
  2、update子命令
    可以通过update子命令(2: [u]pdate)把已经tracked的文件添加到索引库中。其操作和revert子命令类似。
  3、add untracked子命令
    通过add untracked子命令(4: [a]dd untracked)可以把还没被git管理的文件添加到索引库中。其操作和revert子命令类似。
  4、diff子命令
    可以通过diff子命令(6: [d]iff)可以比较索引库中文件和原版本的差异。其操作和revert子命令类似。
  5、status子命令
    status子命令(1: [s]tatus)功能上和git add -i相似
  6、quit子命令
    quit子命令(7: [q]uit)用于退出git add -i命令系统

三、commit、diff、log等

 git commit –m “XX”  提交文件 –m 后面的是注释。

git status        查看仓库状态

git diff  XX      查看XX文件修改了那些内容

 git diff   对比工作区和stage文件的差异

 git diff --cached   对比stage和branch之间的差异

git log          查看历史记录【向后回退的看不到】

   git log --pretty=oneline 查看简略的历史记录

git reflog       查看历史记录的版本号id【看到所有的】

git reset  –hard HEAD^ 或者 git reset  –hard HEAD~ 回退到上一个版本

(如果想回退到100个版本,使用git reset –hard HEAD~100 )

cat XX         查看XX文件内容

git checkout — XX  把XX文件在工作区的修改全部撤销。

git rm XX          删除XX文件

git remote add origin https://github.com/bjlhx5/testgit 关联一个远程库

git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库

git clone https://github.com/bjlhx5/testgit  从远程库中克隆

四、git branch

git branch name  创建分支

git checkout master 切换回master分支

 git checkout –b dev  创建dev分支 并切换到dev分支上

git branch  查看当前所有的分支

git merge dev    在当前的分支上合并dev分支

git branch –d dev 删除dev分支

五、git stash

git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作

git stash list 查看所有被隐藏的文件列表

git stash apply 恢复被隐藏的文件,但是内容不删除

git stash drop 删除文件

git stash pop 恢复文件的同时 也删除文件

git remote 查看远程库的信息

git remote –v 查看远程库的详细信息

git push origin master  Git会把master分支推送到远程库对应的远程分支上