git的基本使用
git用一句话说就是分布式版本管理系统。
和中央仓库版本管理系统(如svn)的不同是在于,可以在本地进行版本管理,可以防止连不上远程仓库或中央仓库无法对本地代码进行版本管理。
git的大体划分为:工作区、暂存区、本地仓库、远程仓库
git的基本使用方法
可以先通过git --version查看版本,检查是否安装和配置成功
然后设置用户名和邮箱
git config --global user.name 用户名
git config --global user.email 邮箱
然后就可以将需要的本地文件进行版本管理的,比如我要对mac系统下的一个git-demo文件夹里的内容进行版本管理
到达文件夹下先初始化仓库git init
shafengzi:git-demo lihaowu$ git init
Initialized empty Git repository in /Users/shafengzi/git/git-demo/.git/
然后我们可以尝试建立一个文本文件demo.txt,这个相当于是工作区
shafengzi:git-demo shafengzi$ cat demo.txt
demo
demo
demo
demo
通过git status查看当前仓库下状态
shafengzi:git-demo shafengzi$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
demo.txt
nothing added to commit but untracked files present (use "git add" to track)
发现demo.txt未追踪,需要把demo.txt添加到暂存区,git add demo.txt
shafengzi:git-demo shafengzi$ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: demo.txt
然后可以再将demo.txt提交到本地仓库,git commit -m "first commit" demo.txt
shafengzi:git-demo shafengzi$ git commit -m "first commit" demo.txt
[master (root-commit) 5b11f81] first commit
1 file changed, 4 insertions(+)
create mode 100644 demo.txt
shafengzi:git-demo shafengzi$ git status
On branch master
nothing to commit, working tree clean
然后可以通过git reflog和git log查看版本信息
shafengzi:git-demo shafengzi$ git reflog
5b11f81 (HEAD -> master) HEAD@{0}: commit (initial): first commit
shafengzi:git-demo shafengzi$ git log
commit 5b11f81452a3614f8bdf3d2179e39de37e42b208 (HEAD -> master)
Author: XXXXX <XXXXXX@qq.com>
Date: Thu Dec 2 23:21:03 2021 +0800
first commit
如果想要推到远程库然其他人可以拉去到代码,那么需要添加远程库的信息
git remote add origin https://xxxxxxx.com/xxxxxx/xxxxxx.git
可以通过git remote -v查看拉取和推送的远程地址
通过git push origin master就可以将本地仓库的内容推送到指定的远程仓库
如果需要拉取远程库合并到本地仓库,可以git pull origin master
如果是需要本地没有初始化的远程仓库内容,可以通过git clone https://xxxxxxx.com/xxxxxx/xxxxxx.git把代码克隆下来