git 常用的一些操作命令

 

 

上图来自网络:

 

Workspace:工作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库

 

1  设置账号和邮箱关联,账号和邮箱

     $git config --global user.name "Your Name"             
     $ git config --global user.email "[email protected]"
     $  git config --global  --list 查看邮箱配置


2  创建空目录:    
    

    $ mkdir test    //创建空目录,目录名字为test

3  进入到某个目录的方法 

 
     $ cd test    //进入test目录

4、初始化仓库,把目录变成git 可以管理的仓库:

    $ git init

5  切换 到磁盘根目录:


    $ git cd  D:  切换到d盘根目录


6   添加 文件到暂缓区
    
    $ git  add . 添加当前文件夹下的所有文件
    $ git add 文件夹加 后缀名
    $ git add common/ main/

7    命令用来将本地暂存的修改提交到版本库。


    $ git commit -m "fix titlebar show or hide"  我们用的比较多的应该就是-m 参数。添加提交信息。 双引号中是提交内容的注释
    $ git commit -a -m ‘提交信息’   我们知道-m参数是输入提交信息的,-a 参数就是可以把还没有执行add命令的修改一起提交。
    $  git commit --amend   这个命令就比较优秀了。经过个人的探索,我总结了它的两个功能
    1.可以修改上一次的提交信息。
    2.可以将最近的修改追加到上一次的提交上。

  会进入到vim 编辑器 然后 你会发现编辑器里你怎么输入都没反应,这是因为vim处在不可编辑状态,
  按下字母键 c(此时进入编辑状态),可以开始修改注释信息了
  修改好后,你会发现怎么都退出不了,然后如下操作:
   按下Esc (退出编辑状态); 接着连按两次大写字母Z,你会惊喜的发现,终于保存好退出来了!
    


8 通过命令git status来查看是否还有文件未提交


    $ git status

9 查看文件到底改了什么内容


    $ git diff readme.txt   


10 git log 可以让我们查看提交commit history


   $ git log
   $ git git log --pretty=oneline 只显示版本号 和修改内容注释;


11 git reflog  获取版本号


12 版本回退:

   git reset --hard HEAD^  回退到上一个版本;
   git reset --hard 版本号    回退到某一个版本号


13   git checkout --readme.txt 意思就是,把readme.txt文件在工作区做的修改全部撤销

 

14  rm命令:rm b.txt   删除文件命令

 

15  添加远程仓库地址:

      git remote add origin https://github.com/tugenhua0707/testgit.git

16 git push 的使用:


    git push的一般形式为 git push <远程主机名> <本地分支名>  <远程分支名> ,例如 git push origin master:refs/for/master ,
    即是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名
    
    

   1.1 git push origin master

        如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建
     
   1.2 git push origin :refs/for/master

如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin --delete master
     
   1.3 git push origin

如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支

   1.4 git push
    如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名

   1.5 关于 refs/for

// refs/for 的意义在于我们提交代码到服务器之后是需要经过code review 之后才能进行merge的,而refs/heads 不需要

 

17  查看分支:

   $git branch  查看本地分支
   $ git branch -r  查看远程分支
   $git branch -a   查看所有分支

 运行结果如下:
  $ git branch -a
  master 本地分支
* trunk
  remotes/origin/HEAD -> origin/master  远程分支
  remotes/origin/master   远程分支
  remotes/origin/  远程分支

②-------- git切换分支命令

18  切换分支:

   $ git checkout -b zhanghanlun origin/zhanghanlun

      PS: 作用是checkout远程的zhanghanlun(后面的是远程分支名) 分支,在本地起名为zhanghanlun (前面的是本地分支名)分支,并切换到本地的zhanghanlun 分支

 


19


  git remote  //查看远程仓库名称:origin
  git remote get-url origin //查看远程仓库地址
  git remote set-url origin https://github.com/developers-youcong/Metronic_Template.git  ( 如果未设置ssh-key,此处仓库地址为 http://... 开头)

20 生成SSH key 生成秘钥


    执行ssh-****** -t rsa -C "你的邮箱地址" 命令 生成ssh key
    然后会叫你输入保存路径,直接按回车即可,保存在C盘用户目录下
    然后会提示输入密码和确认密码,不用输入直接按两下回车即可

 

相关文章: