本文主要介绍Git的一些常用命令,如创建分支、分支合并、代码回滚、设置忽略文件等。
Git的工作原理不在本文的介绍范围之内,如果你在使用过过程中有任何疑问问题,可以在文章下面留言。如果你想要了解Git的工作原理,可以查看这篇文章http://www.bootcss.com/p/git-guide/
- 查看以及修改用户信息
查看
git config user.name
git config user.emai
修改
git config –global user.name ‘yourname’
git config –global user.email ‘youremail’
2.创建工作并提交到master
首先你在GitHub或者GitLab等代码托管平台创建你自己的项目
然后执行下面的命令
cd existing_folder
git init
git remote add origin username@host:/path/to/repository //替换为自己的地址
git add .
git commit -m "Initial commit"
git push -u origin master
3..clone 一个工程
cd existing_folder
git clone username@host:/path/to/repository //替换为要克隆的工程地址
4.查看本地分支
git branch
5.创建分支,并切换到该分支上
注意执行下面命令前,要先提交当前分支的改动
git checkout -b dev
6.提交你的改动
git add .
git commit -m “修改信息”
git push origin branchName //提交代码到该分支
7.分支切换
注意执行下面命令前,要先提交当前分支的改动
git checkout branchName
8.多人协作时,合并代码到master的流程
1. 先将本地代码推送到自己的远程分支
2. git pull origin master //拉取远程代码,并合并到自己的分支上
3. 如果有冲突,解决完。用use "git add/rm <filename>..." as appropriate to mark resolution标记
4. 在提交到自己的远程,然后提merge request就好了!
9.查看当前分支的工作状态
git status
10.拉取远程分支代码
在使用git clone
命令时,拉取到的是master
上的代码,如果想要获取分支上的代码,可以执行下面的代码
git branch -a //查看远程分支
git branch //查看本地分支
git checkout -b remoteBranchName origin/remoteBranchName
11.代码回滚
本地代码回滚
找到想要回到的版本的commitId,执行下面的命令
git reset —hard commitId
远程代码回滚
先找到想要回滚的版本之前一次的commitId,执行下面的命令
1. git reset —hard commitId
2. git push origin branchName --force
12.添加忽略文件
我们先看下GitHub是怎么说的
We recommend every repository include a README, LICENSE, and .gitignore.
可以看到GitHub是推荐每一个代码仓库都包含一个.gitignore文件的。
为什么是这个样子呢?
以XCode 为例,如果没有这个文件,那么你的每一次commit都有UserInterfaceState.xcuserstate这些东西,而这些东西是每次提交、每个用户都不相同的,所以非常容易导致冲突。
如何解决?
以下三步每一步都必不可少,并且要按照顺序执行
- 将xcuserstate,xcuserdata等文件从git的管理中移除
git rm --cached *.xcuserstate
git rm --cached *.xcuserdata
- 创建.gitignore
vim .gitignore
- 添加必要的忽略文件
到工程下找到.gitignore文件,通过文本编辑器打开,如果没有找到设置显示隐藏文件。添加以下内容
.DS_Store
.DS_Store?
*.xcuserstate
project.xcworkspace
xcuserdata
UserInterfaceState.xcuserstate
project.xcworkspace/
xcuserdata/
UserInterface.xcuserstate