On Gitlab, how to compare a file of two different commits

佐手、 提交于 2019-12-22 03:17:08

问题


On Gitlab, how to compare a file of two different commits? I know that that on command line git, the command is:

git diff commit1 commit12 -- file_name

what is the link format to do this on gitlab?

see my related question


回答1:


It will compare commits, You will be able to find file in list.

1) go to Repository > Compare
2) paste: https://gitlab.com/$USER/$REPO/compare?from=$SHA1&to=$SHA2 url
3) hit enter (notice: gitlab will set 'Source' and 'Target' properly)
4) click button 'compare'




回答2:


it appears the direct URL for compare is as follows

# compare URL, where ref_source and ref_target can be commit SHA, tag, or branch
https://${gitlab_host}/${repo_path}/compare/${ref_target}...${ref_source}

# tag example 1, comparing tag v1.5.1 to master
https://${gitlab_host}/${repo_path}/compare/v1.5.1...master

# tag example 2, comparing tag v1.5.1 to tag v1.5.2
https://${gitlab_host}/${repo_path}/compare/v1.5.1...v1.5.2

# commit example 1, comparing commit SHA to master
https://${gitlab_host}/${repo_path}/compare/f6098082f...master

# commit example 2, comparing commit SHA to another commit SHA
https://${gitlab_host}/${repo_path}/compare/f6098082f...2b8daf28

to compare a single file across two commits, one needs to get a blob id of the file first, and append it to the compare url following a octothorp (#); gotta find a way to get that id though

# compare URL, where ref_source and ref_target can be commit SHA, tag, or branch, and file_blob
https://${gitlab_host}/${repo_path}/compare/${ref_target}...${ref_source}#${file_blob}



回答3:


if you want to compare one file different version

1.Repositoy->Commits->select file->click Side-by-side

2.you will see two windows,left is old version and right is new version.



来源:https://stackoverflow.com/questions/50069291/on-gitlab-how-to-compare-a-file-of-two-different-commits

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!