Git使用

git命令使用

1、什么是Git
Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理
。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
2、将文件添加到暂存区,再提交到本地仓库
(1)初始化一个本地版本库,执行一次即可,后面不用再执行
git init
(2)设置用户名和邮箱(全局,要和仓库中的用户名和邮箱一样)

1
2
git config user.name "用户名"  
git config user.email "xxxxxx@qq.com"

(3)创建文件,创建一个名为ai的txt文件
touch ai.txt
(4)查看状态(查看本地暂存区中 有的文件)
git status
但是上面那样ai文件是在本地的,用git add ai.txt指令将其添加到暂存区,就可以通过git status指令看到了;另外可以使用git add . 命令刚才初始化文件夹下的所有文件都保存到本地暂存区中
(5)暂存区(git add过的文件) 提交到本地版本库中
1) -m后跟注释内容
2) 可以 直接 在后面跟上文件,表示把该文件提交到本地版本库(不推荐)
3) 不跟任何文件名称,表示把当前所有暂缓区中的内容都提交到 本地版本库 中
下面两种写法都可以

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
git commit -m "提交ai.txt文件试试" ai.txt
git commit -m "提交ai.txt文件试试" 
```  

**出现nothing to commit, working tree clean表示成功将文件从暂存区提交到本地版本库 **  
**3、修改文件**  
先用vim命令对ai.txt文件进行修改,操作和在Liunx一模一样,修改完后在执行git status查看状态  

![upload successful](\aoyue\images\pasted-47.png)
这种红色的状态代表可提交(commit)
再次执行
git add ai.txt

![upload successful](\aoyue\images\pasted-48.png)
这种绿色状态代表成功到达暂存区
然后执行commit  到本地版本库中  
**4、删除文件**  
step1: 删除本地   
``rm -rf ai.txt``  
step2:删除暂存区

git rm ai.txt
git status

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
step3:提交删除  
``git commit -m "注释" ``  
以上是从工作区到暂存区的操作,下面是操作远程仓库相关的  

**5、克隆操作**
(1)首先获得远程仓库地址  
(2)git config --list 查看设置过的参数
(3)到一个文件夹下,bash命令执行 
``` 
# 默认在当前目录下创建和版本库名相同的文件夹并下载版本到该文件夹下
$ git clone <远程仓库的网址>

# 指定本地仓库的目录
$ git clone <远程仓库的网址> <本地目录>

# -b 指定要克隆的分支,默认是master分支
$ git clone <远程仓库的网址> -b <分支名称> <本地目录>

整个repository(仓库的意思)就被下载下来了。

总结:
touch xx.txt 创建文件
git add xx.txt 添加到缓存区
git commit -m “hahaha” 提交到本地仓库 (其中-m和后面的引号之间没有空格)
git push 上传到远程仓库

6、上传一个文件到仓库的实例操作
(1)通过以下命令会添加一个远程仓库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
git remote add origin https://github.com/aoyue

# 列出已经存在的远程仓库
$ git remote

# 列出远程仓库的详细信息,在别名后面列出URL地址
$ git remote -v
$ git remote --verbose

# 添加远程仓库
$ git remote add <远程仓库的别名> <远程仓库的URL地址>

# 删除指定名称的远程仓库
$ git remote remove <远程仓库的别名>
``` 


git remote是管理远程仓库的命令,后面的add origin <地址> ,表示增加了一个origin远程仓库(origin就是一个远程主机的名字),origin是一个指针指向了后面的value。
 
(2)在将本地仓库与GitHub网站上的仓库进行关联后,便可进行推送了,但是在第一次进行推送时,需要注意的是,GitHub网站上的仓库并非是空的,在创建时创建了一个README文档,因此需要将两者进行合并才行。  
**(rebase和merge都代表合并
两者区别:rebase和bersge区别合并的时候,有可能会产生冲突。
冲突的产生是因为在合并的时候,不同分支修改了相同的位置。所以在合并的时候git不知道那个到底是你想保留的,所以就提出疑问(冲突提醒)让你自己手动选择想要保留的内容,从而解决冲突。)**

``git pull --rebase origin master``  
上面这句话是关联的操作。最后,再进行推送即可。  
``git push -u origin master``  
**这个带有-u这个参数是指,将master分支的所有内容都提交,第一次关联之后后边你再提交就可以不用这个参数了**,之后你的每一次修改,你就可以只将你修改push就好了(即git push origin master)。  
*上述命令中,origin代表远程仓库,master代表其分支。*

比如:
git push A B:C 其中A和C是分别remote端的一个repository的名字和其branch的名字,B是本地端branch的名字
它的意思是把本地的B推送到remotes/A/C下。当B=C时可以直接省略为:git push A B。比如:
“git push origin master:master” 可以直接省略为”git push origin master”.

再比如:
git push origin master //把本地仓库提交到远程仓库的master分支中

$ git push origin test:master // 提交本地test分支作为远程的master分支
$ git push origin test:test // 提交本地test分支作为远程的test分支

1
2
3
4
5
6
7
8
9
10
(3)git branch -a  查看所有分支

![upload successful](\aoyue\images\pasted-49.png)
 上面的显示表示
master 代表本地分支,
origin/master是远程分支  (origin指向仓库,master指向分支)  
**第一行的master前面的星号**是你所在的分支的标记  
**第二行的红色**是因为我后来对远程仓库master分支做了修改,本地和远程不同步。  
 (4)新增:删除github里的文件夹
步骤:(以删除.idea文件夹为例)

git rm -r –cached .idea #–cached不会把本地的.idea删除,但是写为git rm –rf .idea 就会把本地的也删除了
git commit -m ‘delete .idea dir’
git push -u origin master
`

理解git中的head和master
git命令详解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值