Git进门

4 篇文章 0 订阅
2 篇文章 0 订阅

(本文内容在Windows环境下下进行)

关于Git

  1. 安装Git

    Windows下安装Git可以到此下载【此处需要科学上网才能下载】安装包
    下载完直接安装。安装过程中,有些选项需要自行斟酌一下,选择属于自己喜欢的才是最好。我是按照以下的选择安装的:
    1
    2
    3
    4
    5
    6
    7
    8
    之后你在那个目录下想直接提交,只需右键选择 Git Bash Here就直接可以在当前目录下工作。
  2. Git基本命令
    安装完Git之后就可以开始小试牛刀啦。
    打开Git Bash(若你按照我第一点中所选择的选项安装,打开cmd也可以,只不过你要用cmd的一些命令去操作,不能用Linux命令,比如ls,rm,grep等等),输入git查看是否安装成功,成功的话则会出现

这里介绍一下Git一下基本的命令:

git init

到你想做仓库的目录下,git init 一下,就会生成一个.git文件夹,这个文件夹就包含了git的相关信息。

git clone

git clone git@github.com:(GitHub username)/(Repository),就可以把GitHub仓库拉到本地。
在这里需要提示一下,你需要在GitHub上配置上你电脑专属的SSH key。SSH是一种加密协议。Linux上都有配置。Git 服务器使用 SSH and GPG Keys来进行授权,所以想要在 GitHub 提交代码的第一步就是要先添加 你自己电脑的SSH 或者 GPG keys 。
在Git Bash中输入ssh-keygen -t rsa,为了方便,不设密码和换生成路径的话,接下来都直接回车搞定。默认生成路径是c/Documents and Settings/(username)/.ssh,里面的id_rsa.pub文件保存的就是你电脑的SSH keys。
比如添加SSH keys:在GitHub个人用户设置(Personal settings)中SSH and GPG keys选择 New SSH key,然后复制粘贴上你的key,add进去即可。(注:Title那一栏不需要填)
在Git Bash验证是否添加Keys成功可以使用ssh -T git@github.com该命令才检验。

git pull

当要更新代码的时候用的就是git pull 命令,可以用git pull origin master也可以直接用git pull

git status

这个命令用来看你现在本地仓库代码的状态,你增删改文件的时候,都可以查得到,若是要提交就要执行下一步操作。

git diff

git diff (file)是用来看文件内容改了什么内容。除非修改的文件少,否则别单独用git diff不加文件名这个命令,它会将全部有修改过的文件都给你列出来的。
git diff (branch1) (branch 2)可以比较两个分支的差异

git add

git add (文件名)可以把增改的文件变成待commit状态,这个时候颜色会由红变绿,若不想一个个文件地添加,可以用git add . 或者 git add (目录)。

git rm

git rm (文件名)可以把要删除的文件变成待commit状态。

git reset HEAD (file)

这个命令是当你git add/rm了之后发现加删错了要修改时用的,能回到add/rm状态前。

git commit

在你第一个commit前,你可能需要做一下配置你的姓名和邮箱,因为每条commit都会产生一条log,这条log包含用户名字和邮箱,方便其他人查看和联系,git bash会有提示,用一些两条命令:

git config --global user.name "(name)"
git config --global user.email "(email address)"

以上进行了全局配置,当然有些时候我们的某一个项目想要用特定的邮箱,这个时候只需切换到你的项目,以上代码把 –global 去除,再重新执行一遍就可以了
git commit -m "(commit message)" commit message就是你本次要提交的信息,最好是简洁明了。
git commit -F (file) 这里的file最好是文本文件,我一般用txt。若文件存放路径不在当前目录下,最好使用图形界面拖动方式把它拖进Terminal,否则手写路径的时候可能会出差错,还有就是可能出现中文目录问题。

git log

git log 可以查看该仓库下本地的所有commit信息。

gitk

gitk 是你可以看做是git log的图形化界面,它方便我们查看提交记录,更方便的是它可以查看每条提交中的每个修改与上一条中的差异。

git reset –hard

当你commit了之后,提交前发现你有个地方忘记修改了,可以要回退重新修改,可以将本次Commit回退掉,比如 git reset --hard f2e08d9ead4a3479dcb812d7c299b5b4e5286894 后面一串数字是你git log后可以看到的每条commit都有的一串SHA1 ID。你想让你本地的代码回退到那条提交那里,就用那条提交的SHA1 ID。(注:在执行该命令前最好是先将你修改的东西备份一下,copy出来,否则你执行完该命令,有得你后悔的。亲测,AS恢复不回来,git checkout的就可以恢复回来)

git config -l

在push前,可以用git config -l来查看一下配置,比如远程仓库和本地仓库,有时候push需要用到的地址和本地的不一致,这个时候就需要用该命令查看一下。

git push

commit完要是没啥问题就可以用git push origin master 来提交本地代码的。一般在 push 之前最好先pull一下,pull最好是在修改前,这样不容易产生冲突。

git branch

这个命令在GitHub上面会显的比较重要,在公司中也是,分支在版本控制中是比较重要的部分,若是个人,完全可以在一个主分支中搞完所有事情。闲话不多说,git branch可以查看当前分支,后面也可以带参数,具体也可以用git branch -help查看,平时我用的比较多的还是 -a,-D。

git checkout

切换分支的时候可以用git checkout (branch),若是想新建并一步切换到新分支可以用git checkout -b (branch)
还可以用来切换tag和commit git checkout v0.0 或 git checkout f2e08d9ead4a3479dcb812d7c299b5b4e5286894
将某个文件还原到和服务器上的一致也可以用git checkout (file)

git merge

这个命令要先切换到想要合入其他分支的主分支上,然后执行git merge (another branch),merge完之后提交只需直接git push即可。多开发者开发可能会因为多人在同一文件上修改而导致合入有冲突,最后合入失败。

git rebase

这个命令和git merge有点类似,只不过,他在合入的时候会考虑到commit的时间顺序,对于对同一个文件的修改提交,用产生冲突的几率会低一点。

git tag

版本控制中就少不了有版本号,每个版本号需要有标签,用git tag可以查看历史tag记录。若想新建一个直接用git tag (verison),当你标记tag的时候用git log 查看commit信息也可以看到tag信息。

文章最后,说一下个人感受吧:我觉得用命令行的话,在Linux上会好一点,在Windows下cmd窗口用起来总是没有shell那种感觉。不过这个得看个人喜好了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值