git命令行使用记录

之前我们的版本管理工具一直使用Mercurial(Hg),由于最近将另一个业务的子项目要与当前的项目结合,所以我们把新的项目迁移到了git上,之前对于git的基本操作和使用已经很熟练了,但是很久不用,发现再次使用的时候竟然遗忘了很多,所以在此做一篇记录,以便以后遗忘的时候翻阅和浏览,正好趁着休息又在自己的电脑上折腾了一把

git命令行使用记录_第1张图片

1.安装git

在 Mac 上安装 Git 有多种方式,最简单的方法是安装 Xcode Command Line Tools,如果你一开始没有安装,当你尝试使用git命令的时候,也会提示你安装,根据提示安装即可

2.使用git前的一些配置

git 包含3个配置文件config文件,分别存储在不同的位置

a.   /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。

b.  ~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户  (根目录的隐藏文件)

c.  当前使用仓库的 Git 目录中的 config 文件(就是 .git/config)

基本配置:用户名称和邮件地址(使用git提交信息时需要)

$ git config --global user.name "cayley"

$ git config --global user.email  [email protected]

检查配置信息:书写完配置后可以运行检查一遍

$ git config --list

git命令行使用记录_第2张图片
图片来自网络

3.获取你的git仓库项目(不是初始化一个git项目)

获取的传输协议有多种包括 http,https,ssh,git,到你的项目目录下克隆你的项目

$ git clone https://github.com/libgit/project

使用ssh协议,开发团队项目中,所有的团员都要添加自己的ssh秘钥

生成自己的ssh key:终端输入  ssh-keygen -t rsa -C “[email protected]

一个用户可以拥有多个公钥,而一个公钥只能认证一个用户

生成后的文件在.ssh隐藏文件中 运行

$ ls -a 

$ cd .ssh

$ vi  id_rsa.pub 

把id_rsa.pub文件的内容粘贴进去即可

4.检查自己的分支和切换分支

$ git branch 

会显示你的当前分支,如果想要查看远端库的分支情况

$  git branch -r

会列出所有的远端库分支,切换到其中的一个分支(比如切到dev分支)

$  git checkout -b dev

5.创建新的分支并且提交到远端

比如从master分支创建一个分支叫做“app"

$  git checkout -b app

创建完可以查看一下,分支已经切换到app,但是还需要做一些操作

$  git branch ( 查看)

建立本地到上游(远端)仓的链接 --这样代码才能提交上去

$  git branch --set-upstream-to=origin/app

取消对master的跟踪

$  git branch --unset-upstream master

最后提交$ git push origin app

6.修改,提交,拉取,推送

修改了某个文件,需要把这个文件做commit提交,提交后先拉取一下远端这个分支的变更后再进行推送到远端

$ git commit -m "some str"

$ git pull

$ git push

7. 合并

比如要把a分支合并到b分支,那么把分支切回到b分支上,运行

$ git  merge a

如果报错,有冲突运行 

$ git status 然后查看信息解决冲突


8.拉取一个远端的分支

git branch -a


实际使用场景记录

1.别人在版本库创建了一个分支提交之后,我也需要在这个分支下开发,那就要把这个分支拉取到本地

* 先查看本地分支:$ git branch

*查看远程分支:$ git branch -r

*拉取远程你想要的分支到本地并且切换当这个分支: $ git checkout  -b  new  origin/new

然后就可以开发了

2.在本地创建一个新的分支开发新需要,一般都是从master上创建一个新的分支

*先切换到master分支:$ git checkout master

*拉取最新的代码:$ git pull

* 创建新的需求分支new:$ git checkout -b  new

*将自己创建的本地分支提交到远程new分支别人才能拉取你的分支在本地开发:$ git push origin new: new

然后就可以开发了 大家这个需求都在这个分支开发

你可能感兴趣的:(git命令行使用记录)