随笔—git的基本命令

git是一个非常优秀的版本控制系统,可以对各类大小的项目进行源代码管理,

 #git的常用功能如下:
1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。
2、在本地仓库上根据不同的开发目的,创建分支,修改代码。
3、在本机上向自己创建的分支上提交代码。
4、在本机上合并分支。
5、将本地仓库代码和分支推送到服务器上的远程仓库

在官网下载最新版的git软件,官网地址https://git-scm.com/downloads,本文以Windows下git使用为例,服务器端为已经安装完成的Gitlab,此处仅为演示git的相关命令的用法。

  安装完成后,鼠标右键菜单会出现Git GIT和Git Bash 选项,在本地仓库目录选择Git Bash here,打开git命令窗口。

gitbash.png

1、初始化本地仓库,使用git init命令初始化本地仓库,初始化会在本地目录内新建一个.git目录

$ pwd         #查看本地工作路径
/e/train
$ git init   #初始化仓库
Initialized empty Git repository in E:/train/.git/

2、克隆服务器仓库至本地

$ git clone ssh://****.****.com/train.git
Cloning into 'train'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
Checking connectivity... done.

3、将文件新增至暂存区

如果当前目录下有新增的文件,需要先用 git add 命令告诉 Git 开始对这些文件进行跟踪并放入暂时存区,然后提交

git add helloworld.html

4、此时检查当前工作状态可看到有文件待提交;如使用git reset HEAD命令,可将文件拉回未暂时存区,再次查看状态时,文件名变红色

$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
        new file:   helloworld.html

5、提交新增文件到本地仓库

git commit -m 'helloworld.html'

6、推送本地文件到远程仓库:git push

Administrator@Patrick MINGW64 /e/train/test1.0 (master)   #最后的master表示当前处于master分支
$ git push -u origin master    #master表示推送的是本地master分支  
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 606 bytes | 0 bytes/s, done.
Total 6 (delta 0), reused 0 (delta 0)
To http://*****/Test1.0.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

7、查看分支状态:git branch。前带*的为当前分支

$ git branch    #目前只有master一个分支
* master

8、新建分支

Administrator@Patrick MINGW64 /e/train/test1.0 (master)
$ git branch train        #新建train的支支
Administrator@Patrick MINGW64 /e/train/test1.0 (master)
$ git branch              #查看分支状态,现在已经有两个分支了,当前分支仍然是master
* master
  train

9、切换当前分支git checkout

Administrator@Patrick MINGW64 /e/train/test1.0 (master)
$ git checkout train             #切换到train分支
Switched to branch 'train'
Administrator@Patrick MINGW64 /e/train/test1.0 (train)
$ git branch                  #查看分支,train已经变成了当前分支
  master
*  train

10、远程仓库配置:git remote add git_path

$  git remote add ssh://****.****.com/train.git

11、查看远程仓库信息 git remote -v

$ git remote -v
origin   ssh://*****.com/train.git

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21166

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-04
下一篇 2016-07-04

相关推荐

  • PS进程命令常用选项参数详解

    PS命令是什么 ps命令能够给出当前系统中进程的快照。它能捕获系统在某一时间的进程状态。如果想要不断更新查看这个状态,可以配合watch命令或使用top命令。ps命令支持三种使用的语法格式 UNIX 风格:选项可以组合在一起,并且选项前必须有”-“连字符。 BSD 风格 :选项可以组合在一起,但是选项前不能有”-&#822…

    2017-07-09
  • N21_第09周_shell脚本

    作业题目: 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 预置条件: [root@zhouyong148 N21_09]# cat /etc/passwd root:x:0:0:root:/root:/b…

    Linux干货 2016-11-14
  • Linux的哲学思想

    Linux的哲学思想 一切皆文件 不管是普通的文件、目录,还是跟硬件相关的字符设备、块设备、套接字等在Linux中都被当作文件来进行统一的操作管理。 单个程序完成简单的功能,复杂的功能由多个程序组合而成 单个程序只实现简单功能,保证了其高效运行,而复杂功能由多个简单程序组合而成,也能保证一定的高效性。 尽量避免与用户交互 程序从启动开始到结束不需要用户参与,…

    Linux干货 2017-07-02
  • gitlab-ce并发超过30引起ip被封1小时的问题

    系统环境描述 System information System:     Ubuntu 14.04 Current User:   git Using RVM:  no Ruby Version: …

    Linux干货 2015-09-06
  • rsyslog记录日志于mysql

    rsyslog记录日志于mysql:     前提:准备好msql server或mariadb server;     (1) 安装rsyslog连接至mysql server的驱动模块;        &n…

    Linux干货 2016-12-05
  • 20161019第5天作业

    1、只显示/root下的隐藏文件 ls -d '.'* 2、只显示/etc下的目录 ls -d */ ls -l |grep '^d' ls -F | grep "/$"  &nb…

    Linux干货 2016-10-20