git基本技巧

引用:

http://www-cs-students.stanford.edu/~blynn/gitmagic/intl/zh_cn/index.html



保存状态





$ git init #初始化git,在git命令行下通过ls -a可以看到.git文件
$ git add . #把所有的文件添加到git暂存区里
$ git reset --hard #恢复之前的版本

添加、删除、重命名




$git add readme.txt  #添加
$git rm file #删除文件
$git mv file1 file2 #移动文件

撤销/重做




  $git log -n  #查看最近提交信息
完整的提交信息

?





1

2

3

4

5

commit 766f9881690d240ba334153047649b8b8f11c664

Author: Bob <[email protected]>

Date:   Tue Mar 14 01:59:26 2000 -0800

   Replace printf() with write().

$ git reset --hard 766f    #来恢复到一个指定的提交状态,其中766f....是hash值,不用全输入。
$git checkout 82f5         #跳转到一个指定的状态
$ git checkout master      #回到主分支

  • git reset
    --hard
    : 加载一个旧记录并删除所有比之新的记录。

  • git
    checkout
    : 加载一个旧记录,但如果你在这个记录上玩,游戏状态将偏离第
    一轮的较新状态。你现在打的所有游戏记录会在你刚进入的、代表另一个真实的分支里。
$ git checkout master~5      #回到倒数第五个保存状态
这些操作都不会提交新的记录,通过git log是无法查看到的。

撤销




 $ git revert 1b6d   #讲撤销给定哈希值的提交。本撤销被记录为一个新的提交,你可以通过运行 git log 来确认这一点。

下载文件


$ git clone git://server/path/to/files

到最新



$
git pull

我们已经做了什么?



 找出自从上次提交之后你已经做了什么改变:

$ git diff

或者自昨天的改变:

$ git diff "@{yesterday}"

或者一个特定版本与倒数第二个变更之间:

$ git diff 1b6d "master~2"

输出结果都是补丁格式,可以用 git apply 来把补丁打上。也可以试一下:

$ git whatchanged --since="2 weeks ago"
练习


比方A,B,C,D是四个连续的提交,其中B与A一样,除了一些文件删除了。我们想把这
些删除的文件加回D。我们如何做到这个呢?

至少有三个解决方案。假设我们在D:

  1. A与B的差别是那些删除的文件。我们可以创建一个补丁代表这些差别,然后吧补丁 打上:

    $ git diff B A | git apply

  2. 既然这些文件存在A,我们可以把它们拿出来:

    $ git checkout A foo.c bar.h

  3. 我们可以把从A到B的变化视为可撤销的变更:

    $ git revert B

git基本技巧,布布扣,bubuko.com

时间: 2024-10-23 02:44:40

git基本技巧的相关文章

七个你必须重视的 Git 使用技巧

与其他技术相比,Git应该拯救了更多开发人员的饭碗.只要你经常使用Git保存自己的工作,你就一直有机会可以将代码退回到之前的状态,因此就可以挽回那些你深夜里迷迷糊糊犯下的错误. 尽管这么说,Git的命令行界面可是出了名的难掌握.接下来,就给大家介绍7个小技巧,最大限度发挥Git的作用. 通常,大部分时间我们都只会用到add.commit.branch和push/pull这些命令.大部分人熟悉这套只往一个方向运转的工作流.你们有没有想过,如果自己往仓库中添加了错误的文件,或是将代码提交到了错误的分

七个你无法忽视的Git使用技巧(转)

与其他技术相比,Git应该拯救了更多开发人员的饭碗.只要你经常使用Git保存自己的工作,你就一直有机会可以将代码退回到之前的状态,因此就可以挽回那些你深夜里迷迷糊糊犯下的错误. 尽管这么说,Git的命令行界面可是出了名的难掌握.接下来,就给大家介绍7个小技巧,最大限度发挥Git的作用. 通常,大部分时间我们都只会用到add.commit.branch和push/pull这 些命令.大部分人熟悉这套只往一个方向运转的工作流.你们有没有想过,如果自己往仓库中添加了错误的文件,或是将代码提交到了错误的

七个你无法忽视的 Git 使用技巧

与其他技术相比,Git应该拯救了更多开发人员的饭碗.只要你经常使用Git保存自己的工作,你就一直有机会可以将代码退回到之前的状态,因此就可以挽回那些你深夜里迷迷糊糊犯下的错误. 尽管这么说,Git的命令行界面可是出了名的难掌握.接下来,就给大家介绍7个小技巧,最大限度发挥Git的作用. 通常,大部分时间我们都只会用到add.commit.branch和push/pull这 些命令.大部分人熟悉这套只往一个方向运转的工作流.你们有没有想过,如果自己往仓库中添加了错误的文件,或是将代码提交到了错误的

git小技巧:git blame && git show 查看某一行代码的修改历史

先查看某行代码由谁写的,在哪个commit中提交的: git blame file_name git blame -L 58,100 KeyboardActivity.java 其显示格式为: commit ID | 代码提交作者 | 提交时间 | 代码位于文件中的行数 | 实际代码 类似于下面这样: 这样,我们就可以知道commit ID了,然后使用命令:Git show commitID来看~ git小技巧:git blame && git show 查看某一行代码的修改历史

git 使用技巧总结 (不断更新中)

git 使用技巧总结 说明: 本地repo已经有啦,对应的远程repo 为tiger, 本地分支为master. 问题一: 当拉取代码的remote repo仓库为tiger, 而现在要将修改push到remote repo的 develop分支该如何? 思路:拉取新的remote_develop_repo_url, 将原有的代码合并到当前分支, 然后再提交到 remote_develop_repo_url,. 首先将当前修改提交到本地当前master分支, git commit -m "thi

git使用技巧

git使用技巧 转载自:http://172.17.144.8/iceway.zhang/shares/201604/201604_git_tips.md.html 我们在工作中几乎每天都会用到git,由于git的特性非常多,而且支持很多命令及参数,学习曲线比较陡峭.这里总结一些git的使用技巧,希望能通过学习本文内容掌握更多git的技巧以提高使用效率. 理解git原理 这里有一张git命令和对应的数据传输图,理解了这个图就基本理解了git的命令操作原理,后面学习git的命令时会事半功倍. st

git使用技巧集合(持续更新中)

git使用技巧集合(持续更新中) 在团队协作中,git.svn等工具是非常重要的,在此只记录一些git使用过程中遇到的问题以及解决方法,并且会持续更新. 1.git commit之后,还没push,如何撤销? 答:使用命令git reset --soft HEAD^即可,尽量不要使用命令git reset --hard HEAD,因为这样撤销是非常彻底的,本地文件也会删除(HEAD是指向最新的提交,上一次提交是HEAD^,上上次是HEAD^^,也可以写成HEAD-2 ,依次类推) 原文地址:ht

25个 Git 进阶技巧

我已经使用git差不多18个月了,觉得自己对它应该已经非常了解.然后来自GitHub的Scott Chacon过来给LVS做培训,而我在第一天里就学到了很多. 作为一个对git感觉良好的人,我觉得分享从社区里掌握的一些有价值的信息,也许能帮某人解决问题而不用做太深入研究. 基本技巧 1. 安装后的第一步 在安装好git后,你第一件该做的事是设置你的名字和电子邮箱,因为每次提交都要用到这些信息: $ git config --global user.name "Some One" $ g

iOS之项目管理---25个Git进阶技巧

我已经使用git差不多18个月了,觉得自己对它应该已经非常了解.然后来自GitHub的Scott Chacon过来给LVS做培训,而我在第一天里就学到了很多. 作为一个对git感觉良好的人,我觉得分享从社区里掌握的一些有价值的信息,也许能帮某人解决问题而不用做太深入研究. 基本技巧 1. 安装后的第一步 在安装好git后,你第一件该做的事是设置你的名字和电子邮箱,因为每次提交都要用到这些信息: $ git config --global user.name "Some One" $ g