GITHUB中GIT BASH基础命令行

PS:转自https://www.cnblogs.com/WangXinPeng/p/8016293.html

1、常用命令行工具:

  ①cmd     ②powershell      ③git bash

2、命令行常用命令(在git bash上生效,部分在cmd无用)

    -pwd (print working directory) 查看当前所在路径--绝对路径

    -cd(change directory) 切换目标

    -ls(list) 查看当前目录下的内容

    -mkdir(make directory) 创建目录

    -touch 创建文件

    -cat 查看文件内容(一次性将内容全部显示)

    -less 查看文件内容(显示部分信息)--再次输入‘回车’一行一行显示,‘空格’一页一页显示 ,‘b’一次向上走一页

    -rm(remove) 删除文件,-rm -rf 文件夹(循环递进删除文件夹)

    -rmdir(remove directory)删除文件夹(只能删除空文件夹,不常用)

    -clear 清屏

    -q 退出

    -mv(move) 移动文件或重命名

    -cp(copy) 复制文件

    -echo ‘内容’ > 文件名 (输出内容到文件中,每次输入都是覆盖原来的文件)

    -echo ‘内容’ >>文件名(输出内容到文件中,每次输入都是追加新内容)

 

3、Git介绍

     Git版本管理工具,有三大区域:

     ① 工作目录-----存放项目代码的目录

     ②暂存区-----存放工作中更改的文件,避免项目代码丢失。

     ③代码仓库-----当开发功能足够成为一个版本时,提交到仓库。其实就是将暂存区中代码复制一份存储到代码仓库中。

    

     Git常用命令

     ① 配置git用户名和密码

          git config  --global user.name sun

          git config  --global user.email  sun@qq.com

    ② 查看当前git的配置

          git config --list

     ③ 初始化git 仓库

          git init

     ④ 查看当前仓库的状态

          git status

      ⑤ 将工作目录中的文件添加到暂存区

          git add sun.html(这个命令上传一个文件)     git add  .(这个命令会将当前目标下所有文件上传)    git   add  a.txt  b.txt (如果上传多个,文件名之间用空格)

          题外话: 如果当前文件夹内文件很多,但是有些又不想提交。可以通过编辑器(sublime,webstorm等)或命令行创建一个文件 以.gitignore后缀,其内容写入不想提交的文件名即可。此时再通过git add .命令去全部提交时就会有选择提交。

      ⑥ 将暂存区中的代码提交到本地仓库,形成一个版本

          git  commit -m 备注(如果备注内容带空格,则需要加‘’)

       ⑦  查看本地仓库中的历史提交版本

          git  log

       ⑧  将暂存区中文件删除

           git  rm  --cached 文件名

       注意: 1、必须保证工作目录中代码和暂存区中代码一致。 2、删除之后,工作目录中仍然有此文件而暂存区没有。git不将管理该文件。

        ⑨  用暂存区中的文件覆盖工作目录中的文件

           git  checkout -- 文件名

        注意: 暂存区和工作目录中均有此文件,该文件依然被git管理

        ⑩ 回滚到本地仓库中特定版本并覆盖暂存区和工作目录

           git  reset --hard  commitID(commitID可以到git log中查看提交编号),有种方式:1、全部黏贴  2、只取前6位

      注意: 如果有版本1,版本2(后提交),当回滚到版本1时版本2会被自动删除。

  图示:

    

  

  

分支相关命令:

    ① 查看分支  

            git  branch (显示结果中 有* 代表当前所在分支)

    ②  创建分支

            git  branch 分支名称

     ③  切换分支  

           git  checkout 分支名称

     ④  创建并切换分支 

          git  checkout -b 分支名称

     ⑤ 删除分支 (如果分支没有被合并不允许删除)

         git  branch -d 分支名称

     ⑥  删除分支(强制删除分支)

         git  branch  -D 分支名称

      ⑦  合并分支

        git  merge 来源分支(意思:当前目录到主分支,将来源分支合并到主分支上。合并后来源分支仍然存在)

  

 

    

4、github 相关命令介绍

     4.1 模拟一个公共代码仓库

           ①先初始化   git  init --bare  sun.git (注意:此时公共代码仓库的文件夹必须以.git为后缀名)

      4.2  github仓库

           ① 为远程仓库地址创建别名

              git  remote add origin  https://github.com/sun766/Programming-art.git(此处举例)

            注意: 通常我们会把远程仓库地址设置别名为origin

           ② 查看远程地址的详细信息

             git  remote -v

           ③ 查看当前别名所对应的远程仓库地址

             git  remote show origin

            ④ 从远程仓库获取代码(拉取所有版本到本地)

             git clone  origin 

             注意: 加入到已有项目的开发中,需要先拉取所有版本到本地再进行开发。

            ⑤ 从远程仓库拉取代码(拉取最新版本到本地,开发过程中使用)

             git pull origin master

              面试题: 说出clone 和 pull 之间区别

            ⑥向远程仓库推送代码

             git  push origin(远程仓库地址)   master(本地分支名称):master(远程分支名称)

           注意: 推送时一定要在本地代码仓库目录中,如果本地分支同远程分支名称一样,可以只写一个。

            ⑦ 删除当前别名所对应的远程仓库地址

              git  remote remove origin 

            记住: 如果你想重新使用origin 别名,则需要将原来的origin 对应远程地址删除掉。

            

  ‘’多人协作开发免登录设置”

   当不想使用账户和密码进行推送代码时,建议使用SSH协议。

     在git bash 中输入ssh-keygen,   自动会在c:/用户/administrator/中生成.ssh文件。其包括三个文件

       ① id_rsa   ②  id_rsa.pub    ③ known_hosts

      在github账号中settings/SSH and GPG keys,点击New SSH key将②中内容复制粘贴。

      注意: 设置别名时用SSH路径。

posted @ 2018-04-19 16:50  苯宝宝  阅读(180)  评论(0编辑  收藏  举报