linux命令之git

git其实是一种多人开发项目时候的版本控制系统,是由LINUX之父Linus开发的,与SVN最大的区别在于可以支持离线操作。


   首先安装:我用的网易的yum源http://mirrors.163.com/centos/6/os/x86_64/

然后yum install git -y

  • Git初始化

[[email protected] ~]#git --version                                查看git版本

[[email protected] ~]#git config --global user.name dangwanqiang   当前用户姓名和邮箱

[[email protected] ~]#git config --global color.ui true            在git输出中开启颜色显示

[[email protected] ~]#git config --list

user.name=dangwanqiang
[email protected]
color.ui=true

实际也是写入文件中去

[[email protected] ~]#cat ~/.gitconfig

[user]
name = dangwanqiang
email = [email protected]
[color]
ui = true
  • 建立一个工作目录

[[email protected] ~]#git init github

[[email protected] ~]#cd github

[[email protected] github]#ls -A

.git                    可以看到隐藏的目录.git(Git版本库,repository)

  • 在工作目录下的建立操作

三部曲:1.init  2.add  3.commit

[[email protected] github]# touch READ.txt  a.py           //创建自己的工作文件

[[email protected] github]# git status

# On branch master
#
# Initial commit
#
# Untracked files:                                           //未添加到版本库的文件
#   (use "git add <file>..." to include in what will be committed)
#
#READ.txt
#a.py
nothing added to commit but untracked files present (use "git add" to track)

[[email protected] github]# git add a.py                    //将a.py加到版本库

[[email protected] github]# git status
# On branch master
#
# Initial commit
#
# Changes to be committed:                               
#   (use "git rm --cached <file>..." to unstage)
#
#new file:   a.py
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#READ.txt

[[email protected] github]# git add READ.txt            //将READ.txt加到版本库

[[email protected] github]# git status

# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
#new file:   READ.txt
#new file:   a.py
#

[[email protected] github]# git commit -m ‘init commit‘         //-m参数指定提交说明

[master (root-commit) 9f045e6] init commit
 2 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 READ.txt
 create mode 100644 a.py

[[email protected] github]# git status

# On branch master
nothing to commit, working directory clean

[[email protected] github]# vi a.py                            //对a.py再次进行修改

[[email protected] github]# git status -s                      

M a.py

注:工作区与暂缓区不同,即M标志位在第二位,也意味着需要执行add


[[email protected] github]# git status

# On branch master
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory
#
#modified:   a.py
#
no changes added to commit (use "git add" and/or "git commit -a")

[[email protected] github]# git diff                     //查看工作区与暂缓区具体不同

diff --git a/a.py b/a.py
index 72943a1..dbee026 100644
--- a/a.py
+++ b/a.py
@@ -1 +1,2 @@
 aaa
+bbb

[[email protected] github]# git add a.py

[[email protected] github]# git status -s                    

M  a.py

           注:暂缓区与最终版本库不同,即M标志位在第一位,也意味着需要执行commit


[[email protected] github]# git status

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#modified:   a.py
#

[[email protected] github]# git diff --staged            //查看暂缓区与最终版本库的具体不同

diff --git a/a.py b/a.py
index 72943a1..dbee026 100644
--- a/a.py
+++ b/a.py
@@ -1 +1,2 @@
 aaa
+bbb
  • 在工作目录下的撤销误操作

  • 在工作目录下的删除重命名操作

[[email protected] github]# git rm a.py                //删除缓存区和工作区的文件

rm ‘a.py‘

[[email protected] github]# git status

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#deleted:    a.py
#

[[email protected] github]# git status -s

D  a.py

[[email protected] github]# ls

READ.txt

[[email protected] github]# git commit -m ‘delete a.py‘   //将删除提交到最终版本库

[master 480eda1] delete a.py
 1 file changed, 2 deletions(-)
 delete mode 100644 a.py

[[email protected] github]# git status

# On branch master
nothing to commit, working directory clean

[[email protected] github]# git rm --cached READ.txt       //只删除暂存区的文件

rm ‘READ.txt‘

[[email protected] github]# ls

READ.txt

[[email protected] github]# git reset READ.txt             //从最终版本库恢复文件到暂存区

[[email protected] github]# ls

READ.txt

[[email protected] github]# git status

# On branch master

[[email protected] github]# git mv READ.txt READ.LL

[[email protected] github]# git commit -m ‘rename read.txt‘


时间: 2024-10-16 07:49:48

linux命令之git的相关文章

git代理,windows命令行代理,linux命令行代理

下载不动设置代理:git config --global http.proxy http://127.0.0.1:1080git config --global https.proxy https://127.0.0.1:1080git config --global http.SSLVERIFY false 删除git config项目:git config --global http.proxy ""git config --global https.proxy "&qu

***Linux下使用git命令及github项目

在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: [plain] view plaincopy ssh-keygen  ##一直默认就可以了 3.将公钥加入到Github账户信息Account Settings->SSH Key4.测试验证是否成功. [plain] view plaincopy ssh -T [email protected] Hi someone! You've successfully authenti

windows利用git实现linux命令和ssh的植入

简介: Git是一款基于linux内核开发的版本控制工具git.我们可以利用它管理我们的项目,也可以用它连接我们的linux服务器.功能之强大,使用之方便.不过它有多好还需要我们自己来亲自体会. 如何植入: 我们下载安装好git之后,到安装目录的bin下,将bin的路径(如:C:\Program Files (x86)\Git\bin)配置到环境变量path下. 如何使用: Ssh连接: 启动命令窗口:ssh 用户名@服务器地址 Linux命令:

一个cheat命令 == Linux命令小抄大全

本文介绍一个Linux超级命令,有了这个命令,你就可以开开心心的使用linux上的各种命令了. 当你要执行一个linux命令,在这个命令参数选项众多时,你一般怎么做?对,我们大多数人都会去求助man命令.此外,linux上帮助相关的命令还有"help""whereis""whatis"等命令. 当然,在linux上,man命令几乎是万能的,但它却不是最高效的.尤其是对英文不太好的童鞋,man命令给出的帮助信息很长,在短时间内不好理解.如下图所示,

20145234黄斐《信息安全系统设计基础》第七周(Linux命令复习)

已经到了11月,学期过半,而<信息安全系统设计基础>这门课也要到了期中考试了.所以,我在这里,对前半个学期的最基础的知识,做一个复习 复习计划分为两步,本次为Linux命令,下次计划复习git与vim相关指令 本周学习内容在另一篇博客20145234黄斐<信息安全>第七周学习总结上 Linux命令 1.常用小技巧 tab 补全命令.补全目录.补全命令参数 Ctrl+c 终止当前运行的程序,但不结束终端 Ctrl+d 结束输入或退出终端 Ctrl+s 暂停当前程序,任意键恢复 Ctr

在LINUX上创建GIT服务器【转】

转自:http://blog.csdn.net/xiongmc/article/details/9176785 如果使用git的人数较少,可以使用下面的步骤快速部署一个git服务器环境. 1. Client生成 SSH 公钥,以便Server端识别. 每个需要使用git服务器的工程师,自己需要生成一个ssh公钥 进入自己的~/.ssh目录,看有没有用 文件名 和 文件名.pub 来命名的一对文件,这个 文件名 通常是 id_dsa 或者 id_rsa. .pub 文件是公钥,另一个文件是密钥.假

Linux 命令行下的好东西

  列举你可能没注意过的好用的 Linux 命令行命令 现在做网站做移动应用最讲究的就是推广了,推广做的好那就成功了一大半,相对的没曝光产品再好也很难做下去.就这个角度而言绝大多数 Linux 命令行的推广简直是烂透了.繁多 Linux 有用极了的命令行工具就静静的躺在你发行版默认安装的包裹里,很多时候只有当你碰到什么问题的时候网上搜一圈才能知道.更蛋疼的是这里面很多东西你一旦知道了就会想我靠原来没这个到底是怎么过的下去.所以这里我会列出一些我用过的一些,大部分发行版默认就有,或者能用包裹管理工

github linux 命令行操作实例

继续整理一下linux 下面使用命令行操作实例 首先创建文件目录 然后 执行 git clone 操作 [email protected]:~/桌面$ cd test/ [email protected]:~/桌面/test$ git clone https://github.com/timelessz/TESTDEMO.git正克隆到 'TESTDEMO'...remote: Counting objects: 3, done.remote: Total 3 (delta 0), reused

Java开发必会的Linux命令 转载(http://www.importnew.com/17354.html)

作为一个Java开发人员,有些常用的Linux命令必须掌握.即时平时开发过程中不使用Linux(Unix)或者mac系统,也需要熟练掌握Linux命令.因为很多服务器上都是Linux系统.所以,要和服务器机器交互,就要通过shell命令. 本文并不会对所有命令进行详细讲解,只给出常见用法和解释.具体用法可以使用--help查看帮助或者直接通过google搜索学习. 1.查找文件 1 2 3 4 5 6 7 8 9 find / -name filename.txt 根据名称查找/目录下的file