Bird
Raised Fist0
Gitdevops~10 mins

git log --oneline and --graph - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the command to show a simple list of commits with one line each.

Git
git log [1]
Drag options to blanks, or click blank then click option'
A--oneline
B--graph
C--stat
D--patch
Attempts:
3 left
💡 Hint
Common Mistakes
Using --graph instead of --oneline shows a graph, not a simple list.
2fill in blank
medium

Complete the command to show a graphical representation of the commit history.

Git
git log [1]
Drag options to blanks, or click blank then click option'
A--oneline
B--patch
C--graph
D--stat
Attempts:
3 left
💡 Hint
Common Mistakes
Using --oneline only shortens commits but does not show a graph.
3fill in blank
hard

Fix the error in the command to show a compact graph with one line per commit.

Git
git log [1] --graph
Drag options to blanks, or click blank then click option'
A--oneline
B--patch
C--stat
D--name-only
Attempts:
3 left
💡 Hint
Common Mistakes
Using --patch or --stat adds too much detail, not a compact view.
4fill in blank
hard

Fill both blanks to create a command that shows one line per commit and colors the output.

Git
git log [1] [2]
Drag options to blanks, or click blank then click option'
A--oneline
B--color
C--graph
D--name-status
Attempts:
3 left
💡 Hint
Common Mistakes
Using --graph instead of --color will add a graph but no color.
5fill in blank
hard

Fill all three blanks to create a command that shows a colored graph with one line per commit and shows the author name.

Git
git log [1] [2] --pretty=format:'%h - %an - %s' [3]
Drag options to blanks, or click blank then click option'
A--oneline
B--color
C--graph
D--stat
Attempts:
3 left
💡 Hint
Common Mistakes
Using --stat adds file change stats, which is not needed here.

Practice

(1/5)
1. What does the git log --oneline command do?
easy
A. Displays the full commit message for each commit
B. Shows each commit in a short, one-line format
C. Shows only the commit hashes without messages
D. Lists all branches in the repository

Solution

  1. Step 1: Understand the purpose of --oneline

    The --oneline option shortens each commit to one line showing the commit hash and a brief message.
  2. Step 2: Compare options

    Shows each commit in a short, one-line format correctly describes this behavior. Other options describe different commands or incorrect outputs.
  3. Final Answer:

    Shows each commit in a short, one-line format -> Option B
  4. Quick Check:

    --oneline = short commit summary [OK]
Hint: Remember: --oneline means one line per commit [OK]
Common Mistakes:
  • Thinking it shows full commit messages
  • Confusing it with branch listing
  • Assuming it hides commit messages
2. Which of the following is the correct syntax to show a graphical commit history with short commit lines?
easy
A. git log --oneline --graph
B. git log --graph --one-line
C. git log --graph --short
D. git log --one-line --graph

Solution

  1. Step 1: Identify correct options for short and graph

    The correct options are --oneline for short commits and --graph for graphical display.
  2. Step 2: Check syntax correctness

    git log --oneline --graph uses the correct flags. git log --graph --one-line, git log --graph --short, and git log --one-line --graph use invalid flags.
  3. Final Answer:

    git log --oneline --graph -> Option A
  4. Quick Check:

    Use --oneline and --graph together [OK]
Hint: Use --oneline and --graph exactly as flags [OK]
Common Mistakes:
  • Using --one-line instead of --oneline
  • Using --short which is invalid
  • Reversing flag order
3. Given this command: git log --oneline --graph, what will the output show?
medium
A. A graphical tree of commits with short commit messages
B. A list of commits with full messages and no branch structure
C. Only the commit hashes without messages or graph
D. A list of branches and tags in the repository

Solution

  1. Step 1: Understand combined flags effect

    The --oneline flag shortens commit info, and --graph adds a visual graph showing branches and merges.
  2. Step 2: Match output description

    A graphical tree of commits with short commit messages correctly describes a graphical tree with short commit lines. Other options describe outputs missing graph or messages or unrelated info.
  3. Final Answer:

    A graphical tree of commits with short commit messages -> Option A
  4. Quick Check:

    --graph + --oneline = graph with short commits [OK]
Hint: Graph shows branches; oneline shortens commits [OK]
Common Mistakes:
  • Expecting full commit messages
  • Thinking graph shows branches only without commits
  • Confusing with branch or tag listing
4. You ran git log --oneline --graph but see no graph lines. What is the likely cause?
medium
A. Your terminal does not support Unicode characters
B. You ran the command outside a git repository
C. You have only one commit with no branches or merges
D. You forgot to add the --decorate flag

Solution

  1. Step 1: Understand when graph lines appear

    The graph lines show branch and merge structure. If there is only one commit and no branches, no graph lines appear.
  2. Step 2: Evaluate other options

    Your terminal does not support Unicode characters is unlikely because graph uses simple characters. You forgot to add the --decorate flag is unrelated; --decorate adds refs, not graph lines. You ran the command outside a git repository would cause an error, not empty graph.
  3. Final Answer:

    You have only one commit with no branches or merges -> Option C
  4. Quick Check:

    No branches = no graph lines [OK]
Hint: Graph needs multiple commits with branches [OK]
Common Mistakes:
  • Assuming --decorate controls graph lines
  • Thinking terminal Unicode breaks graph
  • Running command outside repo causes error, not empty graph
5. You want to visualize a complex branch history with merges and short commit messages. Which command best helps you?
hard
A. git log --graph --patch
B. git log --oneline --decorate
C. git log --stat --oneline
D. git log --oneline --graph --all

Solution

  1. Step 1: Identify flags for visualization and completeness

    --graph shows branch structure, --oneline shortens commits, and --all includes all branches.
  2. Step 2: Compare options

    git log --oneline --graph --all combines all needed flags for a full, clear view. git log --oneline --decorate lacks graph, so no branch lines. git log --graph --patch shows patches, which is verbose. git log --stat --oneline shows stats, not graph.
  3. Final Answer:

    git log --oneline --graph --all -> Option D
  4. Quick Check:

    Use --graph, --oneline, and --all for full branch view [OK]
Hint: Add --all to see all branches graphically [OK]
Common Mistakes:
  • Omitting --all to see all branches
  • Using --patch which shows code diffs, not graph
  • Confusing --decorate with graph visualization