GIT使用笔记
1.创建git服务器仓库 git init --bare
创建1个作为服务器仓库的目录,例如 server
cd server
git init --bare
cd ..
sudo chmod -R a+w server
2.在本地克隆一个远程服务器仓库 git clone
本地仓库假设取名为local
sudo git clone gituser@127.0.0.1:/Users/zjq/githome/server local
执行后,显示提示信息如下:
warning: You appear to have cloned an empty repository.
Checking connectivity... done
cd local
ls -al
可以看到.git目录,表示本地仓库已经克隆生成。
3.提交文件到暂存区 git add
新建一个文件,例如f01.c
sudo vim f01.c
然后执行
git status
会看到如下提示
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# f01.c
nothing added to commit but untracked files present (use "git add" to track)
执行命令
sudo git add f01.c
git status
会看到提示已经发生变化,如下:
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: f01.c
4. 将已经处于暂存区的文件提交到本地仓库中。 git commit
前面文件f01.c已经提交到暂存区了,再执行下面的命令:
sudo git commit f01.c -m "f01.c"
执行后,出现提示信息:
[master (root-commit) 843f55f] f01.c
1 file changed, 1 insertion(+)
create mode 100644 f01.c
再执行命令
git status
提示信息为:
# On branch master
nothing to commit, working directory clean
5.提交到远程服务器仓库 git push
将本地仓库的文件继续提交到服务器端的仓库中,origin表示远程服务器,master表示本地当前分支仓库,执行命令:
sudo git push origin master
执行后的提示信息:
Counting objects: 3, done.
Writing objects: 100% (3/3), 204 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To gituser@127.0.0.1:/Users/zjq/githome/server
* [new branch] master -> master
6.查看本地分支仓库和远程仓库 git branch
查看本地分支仓库,执行命令:
git branch
显示的提示信息:
* master
master为分支名称,前面的*表示当前工作的分支。
查看远程服务器端的仓库,执行命令:
git branch -r
显示的提示信息:
origin/master
7.创建1个新的分支 git branch 新分支名
在当前分支节点上,创建一个新的分支,命令:
sudo git branch branch001
即创建了1个名为branch001的分支,可以用git branch命令查看到。
在每创建一个新的分支的时候,当时所处的工作分支的当前最新版本将作为所建新分支的起点版本,即新分支的版本将从该旧分支的这个最新版本开始。
8.切换分支 git checkout
切换分支,命令:
sudo git checkout branch001
即将当前工作分支切换到branch01。
9.合并分支 git merge
将分支branch001合并到主分支master,首先使用checkout命令切换到master,然后再用merge进行合并,命令:
sudo git checkout master
sudo git merge branch001
如果有冲突,会提示你,调用git status查看冲突文件。
解决冲突,然后调用git add将解决后的文件暂存。
所有冲突解决后,git commit 提交更改。
10.删除分支 git branch -d 待删除的分支名 或 git branch -D 待删除的分支名
执行git branch -d <分支名>
如果该分支没有合并到主分支会报错,可以用以下命令强制删除git branch -D <分支名>
sudo git branch -d branch001
sudo git branch -D branch002