【Git】常用指令及操作流程介绍
概念介绍:
工作区(workspace):当前操作工作空间,本地所能操作的文件系统
暂存区(index):工作区文件操作之后文件暂时存放的地方
本地仓库(local repository):本地版本控制仓库
远程仓库(remote repository):中心化仓库,项目工作人员共享,与本地仓库进行通信交互。
1、Git 配置
配置用户名以及电子邮箱,避免后续重复操作
git config --global uer.name 'username'
git config --global user.email 'username@huawei.com'
2、Git commit 配置文件
git config commit.template commit.template.txt
模板信息写在commit.template.txt
3、Git ignore 配置文件
将.gitignore.txt放置项目文件夹下,如:
将需要忽略的文件名添加到.gitignore.txt文件里,git会自动忽略这些文件。
4、初始化Git
git init:进入到你想使用版本控制的项目目录,在终端使用git init 初始化git 存储库。
5、添加并提交
将工作区修改内容添加到暂存区:git add file
将暂存区内容提交到本地仓库:git commit -m "commit message"
6、添加远程仓库
git add remote repository_name(default as origin) git_url
7、推送本地仓库修改至远程仓库
git push origin master
8、状态检查
git status:查看当前文件所处的状态:已提交、已修改、未提交
9、Git拉取/同步主库下(分支)的内容
Eg:从origin库的develop分支拉取代码:Git pull origin develop
10、Git 查看远程分支
git branch -r
11、Git 查看远程库
git remote -v
12、修改last commit message
git commit --amend
13、撤销/回退上次或者前几次git commit
回退git commit,方法为git reset
参数默认为 --hard
参数设为--hard:回退版本且删除本地修改内容;
参数设为--soft:回退版本且不删除本地修改内容;
eg:
回退至上次commit版本且删除本地修改内容:git reset --hard HEAD~1
回退至前n次commit版本且删除本地修改内容:git reset --hard HEAD~n
回退至上次commit版本且不删除本地修改内容:git reset --soft HEAD~1
回退至前n次commit版本且不删除本地修改内容:git reset --soft HEAD~n
14、push本地仓库至master的内容
STEPs:
git remote 查看上游库,其中origin为主库,private为folk的私库
工作区(workspace)代码修改后,先执行git add 将修改内容添加到暂存区(index),然后执行git commit 将暂存区的内容提交到本地仓库(local repository)
git push 本地仓库的内容到上游私库private:git push -u private
然后在主库里边新建merge request如下图所示:
如有合入冲突则需先解决冲突再合入。
15、撤销合并
git merge --abort: git可以在任何时间执行撤销操作,并且能够返回到最开始合并之前的状态;
当你解决完冲突,并且合并完成后发现一个错误,输入“git reset --hard”指令,系统就会回退到合并开始之前的状态。
16、git从本次仓库移除文件
如果你想要移除文件从git repository以及你的file system,可以使用:
git rm target_file.txt
git commit -m 'remote target_file.txt from git repository and file system'
如果你想从git repository 移除该文件但是不想从文件系统中删除该文件,可以使用以下操作:
git rm --cached target_file.txt
git commit -m 'remove target_file.txt only from git repository'
17、分支管理
当你需要开发一个新的特性,或者修补bug,这个时候就需要创建一个分支进行开发。
bug分支or新特性分支是从Master分支中分出来的,在开发结束之后需要将bug特性或新特性合并到Master中。
STEPs:
创建一个特性分支:git checkout -b new_feature master
开发结束之后,合并至master分支:
先切换至master:git checkout master
合并操作:git merge --no-ff new_feature
先切换至develop:git checkout develop
合并操作:git merge --no-ff new_feature
再合并至 develop分支:
最后删除该新建分支
git branch -d new_feature
- 点赞
- 收藏
- 关注作者
评论(0)