Git操作详解

版本状态
    -要随时掌握工作区的状态,使用git status命令。
    -如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

比较不同
    -git diff可以查看修改内容。
查看历史记录
    -git log
    -git log --pretty=oneline美化输出,只包含commit id
    -git reflog 查看历史操作记录
版本回退
    -git reset --hard HEAD^ ^表示上几个版本  HEAD~1
    ~git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。
    -(暂存区到工作区)
git管理
    把一个文件改其中一行,再重命名,提交,git会识别出修改+重命名这个操作,而不是删文件+新文件这个操作。
撤销修改(从版本库提到工作区checkout)
    git checkout -- file
删除文件
    - git rm test.txt

远程仓库
    # 增加一个新的远程仓库,并命名
    $ git remote add [shortname] [url]
    $ eg. git remote add origin [email protected]:Yunchunrui/DJDX.git
    # 推送分支内容
    $ git push -u origin master
仓库克隆
    $ git clone [url]

分支管理
    创建并切换分支
    $ git checkout命令加上-b参数表示创建并切换
    查看当前分支
    $ git branch
    分支合并
    $ git merge
    分支删除
    $ git tbranch -d name
解决冲突
    使用git log --graph 可以看到分支情况
    git log --graph --pretty=oneline --abbrev-commit
分支管理策略


在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。

HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
如果嫌输出信息太多,看得眼花缭乱的,可以试试加上参数:

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

你可能感兴趣的:(#杂项)